/* Toss AutoTrader Custom Style (by 톱니바꿈) */
.nav-tab {
    position: relative;
    border-radius: 0.75rem !important;
    font-weight: 800 !important;
    letter-spacing: -0.01em;
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
    border: 1px solid transparent !important;
}

.nav-tab.active {
    background: linear-gradient(135deg, #2563eb 0%, #4f46e5 50%, #7c3aed 100%) !important;
    color: #ffffff !important;
    box-shadow: 0 4px 15px rgba(79, 70, 229, 0.45), inset 0 1px 1px rgba(255, 255, 255, 0.35) !important;
    border: 1px solid rgba(255, 255, 255, 0.3) !important;
    transform: translateY(-1px);
}

.nav-tab:not(.active) {
    color: #94a3b8 !important;
    background-color: transparent !important;
}

.nav-tab:not(.active):hover {
    color: #ffffff !important;
    background-color: rgba(255, 255, 255, 0.08) !important;
    border-color: rgba(255, 255, 255, 0.12) !important;
}

.btn-tf.active {
    background-color: #3b82f6;
    color: #ffffff;
}

.btn-tf:not(.active) {
    background-color: #0f172a;
    color: #94a3b8;
}

.btn-tf:not(.active):hover {
    color: #ffffff;
}

/* 톱니바꿈 회전 애니메이션 */
@keyframes spinSlow {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

.animate-spin-slow {
    animation: spinSlow 12s linear infinite;
}

/* Custom Scrollbars */
::-webkit-scrollbar {
    width: 6px;
    height: 6px;
}

::-webkit-scrollbar-track {
    background: #0f172a;
}

::-webkit-scrollbar-thumb {
    background: #334155;
    border-radius: 3px;
}

::-webkit-scrollbar-thumb:hover {
    background: #475569;
    border-radius: 3px;
}

/* Real-Time News Ticker Marquee Animation */
@keyframes tickerMarquee {
    0% { transform: translateX(0%); }
    100% { transform: translateX(-50%); }
}

.news-ticker-track {
    display: inline-flex;
    white-space: nowrap;
    animation: tickerMarquee 180s linear infinite;
    will-change: transform;
}

.news-ticker-track:hover {
    animation-play-state: paused;
}

#surging-ticker-container {
    mask-image: linear-gradient(to right, transparent, black 2%, black 98%, transparent);
}


/* ==========================================================================
   THEME SYSTEM DEFINITIONS (6 Themes)
   1. 기본테마 (default / dark-slate)
   2. 사이버 네온 (cyber-neon)
   3. 라벤더 감성 (lavender)
   4. 포레스트 에코 (forest)
   5. 라이트 모드 (light)
   6. 미드나잇 골드 (midnight-gold) - AI 추천 테마
   ========================================================================== */

/* ===== 2. Cyber Neon Theme ===== */
[data-theme="cyber-neon"] body,
[data-theme="cyber-neon"] [class*="bg-[#0f172a]"] {
    background-color: #060713 !important;
}
[data-theme="cyber-neon"] header,
[data-theme="cyber-neon"] [class*="bg-[#1e293b]"],
[data-theme="cyber-neon"] [class*="bg-slate-900"],
[data-theme="cyber-neon"] [class*="bg-slate-800"] {
    background-color: #0d112b !important;
    border-color: rgba(0, 243, 255, 0.25) !important;
}
[data-theme="cyber-neon"] [class*="bg-slate-950"] {
    background-color: #080a1c !important;
}
[data-theme="cyber-neon"] [class*="border-slate-800"],
[data-theme="cyber-neon"] [class*="border-slate-700"],
[data-theme="cyber-neon"] [class*="border-slate-600"] {
    border-color: rgba(0, 243, 255, 0.2) !important;
}
[data-theme="cyber-neon"] .text-slate-100,
[data-theme="cyber-neon"] .text-slate-200 {
    color: #e0f7fa !important;
}
[data-theme="cyber-neon"] .text-slate-300,
[data-theme="cyber-neon"] .text-slate-400 {
    color: #80deea !important;
}
[data-theme="cyber-neon"] select,
[data-theme="cyber-neon"] input,
[data-theme="cyber-neon"] textarea {
    background-color: #080c21 !important;
    color: #00f3ff !important;
    border-color: rgba(0, 243, 255, 0.4) !important;
}
[data-theme="cyber-neon"] option {
    background-color: #0d112b !important;
    color: #00f3ff !important;
}
[data-theme="cyber-neon"] .nav-tab.active,
[data-theme="cyber-neon"] .btn-tf.active {
    background-color: #00f3ff !important;
    color: #060713 !important;
    box-shadow: 0 0 15px rgba(0, 243, 255, 0.5) !important;
}
[data-theme="cyber-neon"] ::-webkit-scrollbar-track {
    background: #060713;
}
[data-theme="cyber-neon"] ::-webkit-scrollbar-thumb {
    background: #00f3ff;
    box-shadow: 0 0 8px #00f3ff;
}

/* ===== 3. Lavender Sensibility Theme ===== */
[data-theme="lavender"] body,
[data-theme="lavender"] [class*="bg-[#0f172a]"] {
    background-color: #13111c !important;
}
[data-theme="lavender"] header,
[data-theme="lavender"] [class*="bg-[#1e293b]"],
[data-theme="lavender"] [class*="bg-slate-900"],
[data-theme="lavender"] [class*="bg-slate-800"] {
    background-color: #1d182e !important;
    border-color: rgba(192, 132, 252, 0.25) !important;
}
[data-theme="lavender"] [class*="bg-slate-950"] {
    background-color: #161324 !important;
}
[data-theme="lavender"] [class*="border-slate-800"],
[data-theme="lavender"] [class*="border-slate-700"],
[data-theme="lavender"] [class*="border-slate-600"] {
    border-color: rgba(192, 132, 252, 0.2) !important;
}
[data-theme="lavender"] .text-slate-100,
[data-theme="lavender"] .text-slate-200 {
    color: #f3e8ff !important;
}
[data-theme="lavender"] .text-slate-300,
[data-theme="lavender"] .text-slate-400 {
    color: #c4b5fd !important;
}
[data-theme="lavender"] select,
[data-theme="lavender"] input,
[data-theme="lavender"] textarea {
    background-color: #161226 !important;
    color: #e9d5ff !important;
    border-color: rgba(192, 132, 252, 0.4) !important;
}
[data-theme="lavender"] option {
    background-color: #1d182e !important;
    color: #e9d5ff !important;
}
[data-theme="lavender"] .nav-tab.active,
[data-theme="lavender"] .btn-tf.active {
    background-color: #a855f7 !important;
    color: #ffffff !important;
    box-shadow: 0 0 14px rgba(168, 85, 247, 0.4) !important;
}
[data-theme="lavender"] ::-webkit-scrollbar-track {
    background: #13111c;
}
[data-theme="lavender"] ::-webkit-scrollbar-thumb {
    background: #a855f7;
}

/* ===== 4. Forest Eco Theme ===== */
[data-theme="forest"] body,
[data-theme="forest"] [class*="bg-[#0f172a]"] {
    background-color: #0a1612 !important;
}
[data-theme="forest"] header,
[data-theme="forest"] [class*="bg-[#1e293b]"],
[data-theme="forest"] [class*="bg-slate-900"],
[data-theme="forest"] [class*="bg-slate-800"] {
    background-color: #10241b !important;
    border-color: rgba(16, 185, 129, 0.25) !important;
}
[data-theme="forest"] [class*="bg-slate-950"] {
    background-color: #0c1b14 !important;
}
[data-theme="forest"] [class*="border-slate-800"],
[data-theme="forest"] [class*="border-slate-700"],
[data-theme="forest"] [class*="border-slate-600"] {
    border-color: rgba(16, 185, 129, 0.2) !important;
}
[data-theme="forest"] .text-slate-100,
[data-theme="forest"] .text-slate-200 {
    color: #ecfdf5 !important;
}
[data-theme="forest"] .text-slate-300,
[data-theme="forest"] .text-slate-400 {
    color: #a7f3d0 !important;
}
[data-theme="forest"] select,
[data-theme="forest"] input,
[data-theme="forest"] textarea {
    background-color: #0c1c15 !important;
    color: #34d399 !important;
    border-color: rgba(16, 185, 129, 0.4) !important;
}
[data-theme="forest"] option {
    background-color: #10241b !important;
    color: #34d399 !important;
}
[data-theme="forest"] .nav-tab.active,
[data-theme="forest"] .btn-tf.active {
    background-color: #10b981 !important;
    color: #0a1612 !important;
    box-shadow: 0 0 14px rgba(16, 185, 129, 0.4) !important;
}
[data-theme="forest"] ::-webkit-scrollbar-track {
    background: #0a1612;
}
[data-theme="forest"] ::-webkit-scrollbar-thumb {
    background: #10b981;
}

/* ===== 5. Light Mode Theme ===== */
[data-theme="light"] body,
[data-theme="light"] [class*="bg-[#0f172a]"] {
    background-color: #f1f5f9 !important;
    color: #0f172a !important;
}
[data-theme="light"] header,
[data-theme="light"] [class*="bg-[#1e293b]"],
[data-theme="light"] [class*="bg-slate-900"],
[data-theme="light"] [class*="bg-slate-800"] {
    background-color: #ffffff !important;
    color: #0f172a !important;
    border-color: #cbd5e1 !important;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.04) !important;
}
[data-theme="light"] [class*="bg-slate-950"] {
    background-color: #f8fafc !important;
    color: #0f172a !important;
}
[data-theme="light"] [class*="border-slate-800"],
[data-theme="light"] [class*="border-slate-700"],
[data-theme="light"] [class*="border-slate-600"] {
    border-color: #e2e8f0 !important;
}
[data-theme="light"] .text-slate-100,
[data-theme="light"] .text-slate-200,
[data-theme="light"] .text-white {
    color: #0f172a !important;
}
[data-theme="light"] .text-slate-300,
[data-theme="light"] .text-slate-400 {
    color: #475569 !important;
}
[data-theme="light"] select,
[data-theme="light"] input,
[data-theme="light"] textarea {
    background-color: #ffffff !important;
    color: #0f172a !important;
    border-color: #cbd5e1 !important;
}
[data-theme="light"] option {
    background-color: #ffffff !important;
    color: #0f172a !important;
}
[data-theme="light"] .nav-tab.active,
[data-theme="light"] .btn-tf.active {
    background-color: #2563eb !important;
    color: #ffffff !important;
    box-shadow: 0 4px 12px rgba(37, 99, 235, 0.25) !important;
}
[data-theme="light"] .nav-tab:not(.active) {
    color: #475569 !important;
}
[data-theme="light"] .nav-tab:not(.active):hover {
    color: #0f172a !important;
    background-color: #e2e8f0 !important;
}
[data-theme="light"] ::-webkit-scrollbar-track {
    background: #e2e8f0;
}
[data-theme="light"] ::-webkit-scrollbar-thumb {
    background: #94a3b8;
}

/* ===== 6. Midnight Gold (AI Recommended Theme) ===== */
[data-theme="midnight-gold"] body,
[data-theme="midnight-gold"] [class*="bg-[#0f172a]"] {
    background-color: #09090b !important;
}
[data-theme="midnight-gold"] header,
[data-theme="midnight-gold"] [class*="bg-[#1e293b]"],
[data-theme="midnight-gold"] [class*="bg-slate-900"],
[data-theme="midnight-gold"] [class*="bg-slate-800"] {
    background-color: #141417 !important;
    border-color: rgba(251, 191, 36, 0.25) !important;
}
[data-theme="midnight-gold"] [class*="bg-slate-950"] {
    background-color: #0f0f12 !important;
}
[data-theme="midnight-gold"] [class*="border-slate-800"],
[data-theme="midnight-gold"] [class*="border-slate-700"],
[data-theme="midnight-gold"] [class*="border-slate-600"] {
    border-color: rgba(251, 191, 36, 0.2) !important;
}
[data-theme="midnight-gold"] .text-slate-100,
[data-theme="midnight-gold"] .text-slate-200 {
    color: #fafafa !important;
}
[data-theme="midnight-gold"] .text-slate-300,
[data-theme="midnight-gold"] .text-slate-400 {
    color: #fde68a !important;
}
[data-theme="midnight-gold"] select,
[data-theme="midnight-gold"] input,
[data-theme="midnight-gold"] textarea {
    background-color: #1a1a20 !important;
    color: #fbbf24 !important;
    border-color: rgba(251, 191, 36, 0.4) !important;
}
[data-theme="midnight-gold"] option {
    background-color: #141417 !important;
    color: #fbbf24 !important;
}
[data-theme="midnight-gold"] .nav-tab.active,
[data-theme="midnight-gold"] .btn-tf.active {
    background-color: #fbbf24 !important;
    color: #09090b !important;
    box-shadow: 0 0 15px rgba(251, 191, 36, 0.4) !important;
}
[data-theme="midnight-gold"] ::-webkit-scrollbar-track {
    background: #09090b;
}
[data-theme="midnight-gold"] ::-webkit-scrollbar-thumb {
    background: #d97706;
}

/* ==========================================================================
   HIGH-CONTRAST PANEL SEPARATION (고정판 메인 헤더 & 하단 전체 이중선/가는선 2개)
   ========================================================================== */

/* 1. 메인 상단 헤더 하단 경계선 (이중 하얀선 / 가는선 2개) */
header {
    border-bottom: 5px double #ffffff !important;
    box-shadow: 0 4px 16px rgba(255, 255, 255, 0.3) !important;
}

/* 2. 뉴스 속보 띠 바 하단 경계선 (이중 하얀선 / 가는선 2개) */
.news-ticker-bar {
    border-bottom: 5px double rgba(255, 255, 255, 0.75) !important;
}

/* 3. 상단 고정판 전체 최하단 이중 하얀선 (가는선 2개 / 5px double white) */
.fixed-panel-divider {
    border-bottom: 5px double #ffffff !important;
    box-shadow: 0 4px 18px rgba(255, 255, 255, 0.35), 0 12px 32px rgba(0, 0, 0, 0.95) !important;
}

/* 테마별 메인 헤더 & 고정판 이중선 글로우 */
[data-theme="cyber-neon"] header,
[data-theme="cyber-neon"] .news-ticker-bar,
[data-theme="cyber-neon"] .fixed-panel-divider {
    border-bottom: 5px double #00f3ff !important;
    box-shadow: 0 0 22px rgba(0, 243, 255, 0.6), 0 12px 32px rgba(0, 0, 0, 0.95) !important;
}

[data-theme="lavender"] header,
[data-theme="lavender"] .news-ticker-bar,
[data-theme="lavender"] .fixed-panel-divider {
    border-bottom: 5px double #e9d5ff !important;
    box-shadow: 0 0 18px rgba(192, 132, 252, 0.5), 0 12px 32px rgba(0, 0, 0, 0.9) !important;
}

[data-theme="forest"] header,
[data-theme="forest"] .news-ticker-bar,
[data-theme="forest"] .fixed-panel-divider {
    border-bottom: 5px double #6ee7b7 !important;
    box-shadow: 0 0 18px rgba(16, 185, 129, 0.5), 0 12px 32px rgba(0, 0, 0, 0.9) !important;
}

[data-theme="light"] header,
[data-theme="light"] .news-ticker-bar,
[data-theme="light"] .fixed-panel-divider {
    border-bottom: 5px double #2563eb !important;
    box-shadow: 0 6px 20px rgba(37, 99, 235, 0.25), 0 10px 25px rgba(0, 0, 0, 0.15) !important;
}

[data-theme="midnight-gold"] header,
[data-theme="midnight-gold"] .news-ticker-bar,
[data-theme="midnight-gold"] .fixed-panel-divider {
    border-bottom: 5px double #fbbf24 !important;
    box-shadow: 0 0 22px rgba(251, 191, 36, 0.5), 0 12px 32px rgba(0, 0, 0, 0.95) !important;
}

/* ==========================================================================
   GLOBAL SECTION BORDER THICKNESS BOOST (전체 화면 구간 외곽선 굵기 1단계 상승: 1px -> 2px)
   ========================================================================== */

/* 1. 메인 섹션 카드, 구간 컨테이너, 패널 박스 굵기 2px 강화 */
.border {
    border-width: 2px !important;
}

.border-b {
    border-bottom-width: 2px !important;
}

.border-t {
    border-top-width: 2px !important;
}

.border-l {
    border-left-width: 2px !important;
}

.border-r {
    border-right-width: 2px !important;
}

/* 2. 테마별 파널 / 카드의 외곽선 굵기 2px 조절 */
[class*="border-slate-"],
[class*="border-indigo-"],
[class*="border-amber-"],
[class*="border-emerald-"],
[class*="border-purple-"],
[class*="border-blue-"],
[class*="border-rose-"] {
    border-width: 2px;
}

/* 3. 테이블 및 서브 카드 테두리 선명도 보정 */
table th, table td {
    border-width: 1.5px;
}







