/* ==============================
   KOREAN NEWS POST CONTENT STYLING
   ============================== */

/* === BASE POST CONTENT CONTAINER === */
.elementor-widget-theme-post-content {
    max-width: 100% !important;
    margin: 0 auto !important;
    padding: 0 !important;
  }
  
  .elementor-widget-theme-post-content .post-content,
  .elementor-widget-theme-post-content .entry-content {
    font-family: var(--e-global-typography-text-font-family, "Noto Sans KR"), Sans-serif !important;
    color: var(--e-global-color-text, #111111) !important;
    word-break: keep-all !important;
    overflow-wrap: break-word !important;
  }
  
  /* === TYPOGRAPHY HIERARCHY - KOREAN OPTIMIZED === */
  
  /* Paragraphs - Korean standard with proper line-height */
  .elementor-widget-theme-post-content p {
    font-size: 1.2rem !important;
    line-height: 1.9 !important;
    font-weight: 400 !important;
    letter-spacing: -0.05em !important;
    margin: 0 0 1.5rem 0 !important;
    color: var(--e-global-color-text, #111111) !important;
    word-break: keep-all !important;
    overflow-wrap: break-word !important;
  }
  
  /* Headings - Korean newspaper hierarchy with proper line-heights */
  .elementor-widget-theme-post-content h1 {
    font-size: 2.2rem !important;
    line-height: 2.6rem !important;
    font-weight: 600 !important;
    letter-spacing: -0.05em !important;
    margin: 0 0 1.5rem 0 !important;
    color: var(--e-global-color-text, #111111) !important;
    word-break: keep-all !important;
  }
  
  .elementor-widget-theme-post-content h2 {
    font-size: 1.75rem !important;
    line-height: 2.4rem !important;
    font-weight: 500 !important;
    letter-spacing: -0.05em !important;
    margin: 2.5rem 0 1.25rem 0 !important;
    padding-bottom: 0.5rem !important;
    border-bottom: 2px solid var(--e-global-color-primary, #111111) !important;
    color: var(--e-global-color-text, #111111) !important;
    word-break: keep-all !important;
  }
  
  .elementor-widget-theme-post-content h3 {
    font-size: 1.5rem !important;
    line-height: 2.2rem !important;
    font-weight: 500 !important;
    letter-spacing: -0.05em !important;
    margin: 2rem 0 1rem 0 !important;
    color: var(--e-global-color-text, #111111) !important;
    word-break: keep-all !important;
  }
  
  .elementor-widget-theme-post-content h4 {
    font-size: 1.25rem !important;
    line-height: 2rem !important;
    font-weight: 500 !important;
    letter-spacing: -0.05em !important;
    margin: 1.75rem 0 0.75rem 0 !important;
    color: var(--e-global-color-text, #111111) !important;
    word-break: keep-all !important;
  }
  
  .elementor-widget-theme-post-content h5,
  .elementor-widget-theme-post-content h6 {
    font-size: 1.125rem !important;
    line-height: 1.8rem !important;
    font-weight: 500 !important;
    letter-spacing: -0.05em !important;
    margin: 1.5rem 0 0.5rem 0 !important;
    color: var(--e-global-color-text, #111111) !important;
    word-break: keep-all !important;
  }
  
  /* === LINKS === */
  .elementor-widget-theme-post-content a {
    color: var(--e-global-color-primary, #009FE4) !important;
    text-decoration: underline !important;
    text-underline-offset: 0.2em !important;
    text-decoration-thickness: 1px !important;
    transition: all 0.2s ease !important;
  }
  
  .elementor-widget-theme-post-content a:hover {
    color: var(--e-global-color-secondary, #00B8B4) !important;
    text-decoration-thickness: 2px !important;
  }
  
  /* === LISTS - Korean News Standard === */
  
  /* Unordered Lists */
  .elementor-widget-theme-post-content ul {
    margin: 1.5rem 0 !important;
    padding-left: 0 !important;
    list-style: none !important;
  }
  
  .elementor-widget-theme-post-content ul li {
    position: relative !important;
    font-size: 1.1rem !important;
    line-height: 1.8rem !important;
    font-weight: 400 !important;
    letter-spacing: -0.05em !important;
    margin: 0 0 1rem 0 !important;
    padding-left: 1.5rem !important;
    color: var(--e-global-color-text, #111111) !important;
    word-break: keep-all !important;
  }
  
  .elementor-widget-theme-post-content ul li::before {
    content: "•" !important;
    position: absolute !important;
    left: 0 !important;
    top: 0 !important;
    color: var(--e-global-color-primary, #111111) !important;
    font-weight: 500 !important;
    font-size: 1.2em !important;
  }
  
  /* Ordered Lists */
  .elementor-widget-theme-post-content ol {
    margin: 1.5rem 0 !important;
    padding-left: 0 !important;
    list-style: none !important;
    counter-reset: ordered-counter !important;
  }
  
  .elementor-widget-theme-post-content ol li {
    position: relative !important;
    font-size: 1.1rem !important;
    line-height: 1.8rem !important;
    font-weight: 400 !important;
    letter-spacing: -0.05em !important;
    margin: 0 0 1rem 0 !important;
    padding-left: 2rem !important;
    color: var(--e-global-color-text, #111111) !important;
    word-break: keep-all !important;
    counter-increment: ordered-counter !important;
  }
  
  .elementor-widget-theme-post-content ol li::before {
    content: counter(ordered-counter) "." !important;
    position: absolute !important;
    left: 0 !important;
    top: 0 !important;
    color: var(--e-global-color-primary, #111111) !important;
    font-weight: 600 !important;
    font-size: 1em !important;
    min-width: 1.5rem !important;
  }
  
  /* Nested Lists */
  .elementor-widget-theme-post-content ul ul,
  .elementor-widget-theme-post-content ol ol,
  .elementor-widget-theme-post-content ul ol,
  .elementor-widget-theme-post-content ol ul {
    margin: 0.5rem 0 !important;
    padding-left: 1.5rem !important;
  }
  
  .elementor-widget-theme-post-content ul ul li::before {
    content: "◦" !important;
    color: var(--e-global-color-secondary, #00B8B4) !important;
  }
  
  /* === BLOCKQUOTES - Korean News Style === */
  .elementor-widget-theme-post-content blockquote {
    position: relative !important;
    margin: 2rem 0 !important;
    padding: 1.5rem 2rem 1.5rem 3rem !important;
    background: var(--e-global-color-c6eb9e4, #F8F9FA) !important;
    border-left: 4px solid var(--e-global-color-primary, #111111) !important;
    font-style: normal !important;
    border-radius: 0 8px 8px 0 !important;
  }
  
  .elementor-widget-theme-post-content blockquote::before {
    content: "“" !important;
    position: absolute !important;
    left: 1rem !important;
    top: 1rem !important;
    font-size: 2rem !important;
    color: var(--e-global-color-primary, #111111) !important;
    font-weight: 600 !important;
    line-height: 1 !important;
  }
  
  .elementor-widget-theme-post-content blockquote p {
    font-size: 1.1rem !important;
    line-height: 1.8rem !important;
    font-weight: 400 !important;
    color: var(--e-global-color-text, #111111) !important;
    margin: 0 !important;
    font-style: normal !important;
  }
  
  .elementor-widget-theme-post-content blockquote cite,
  .elementor-widget-theme-post-content blockquote footer {
    display: block !important;
    margin-top: 1rem !important;
    font-size: 0.95rem !important;
    line-height: 1.6rem !important;
    color: var(--e-global-color-2104387, #666) !important;
    font-style: normal !important;
    font-weight: 400 !important;
    text-align: right !important;
  }
  
  .elementor-widget-theme-post-content blockquote cite::before,
  .elementor-widget-theme-post-content blockquote footer::before {
    content: "— " !important;
  }
  
  /* === INFO BOXES (using Gutenberg Group blocks) === */
  
  /* General Info Box - add class "info-box" to Group block */
  .elementor-widget-theme-post-content .wp-block-group.info-box {
    margin: 2rem 0 !important;
    padding: 1.5rem !important;
    background: var(--e-global-color-c6eb9e4, #F8F9FA) !important;
    border: 1px solid var(--e-global-color-divider, #E5E5E5) !important;
    border-radius: 8px !important;
    position: relative !important;
  }
  
  .elementor-widget-theme-post-content .wp-block-group.info-box::before {
    content: "ℹ️" !important;
    position: absolute !important;
    top: 1rem !important;
    right: 1rem !important;
    font-size: 1.25rem !important;
  }
  
  .elementor-widget-theme-post-content .wp-block-group.info-box p {
    font-size: 1rem !important;
    line-height: 1.7rem !important;
    font-weight: 400 !important;
    margin-bottom: 0.75rem !important;
  }
  
  .elementor-widget-theme-post-content .wp-block-group.info-box p:last-child {
    margin-bottom: 0 !important;
  }
  
  /* Warning Box - add class "warning-box" */
  .elementor-widget-theme-post-content .wp-block-group.warning-box {
    margin: 2rem 0 !important;
    padding: 1.5rem !important;
    background: #FFF3E0 !important;
    border: 1px solid #FFB74D !important;
    border-left: 4px solid #FF9800 !important;
    border-radius: 8px !important;
    position: relative !important;
  }
  
  .elementor-widget-theme-post-content .wp-block-group.warning-box::before {
    content: "⚠️" !important;
    position: absolute !important;
    top: 1rem !important;
    right: 1rem !important;
    font-size: 1.25rem !important;
  }
  
  /* Success Box - add class "success-box" */
  .elementor-widget-theme-post-content .wp-block-group.success-box {
    margin: 2rem 0 !important;
    padding: 1.5rem !important;
    background: #E8F5E8 !important;
    border: 1px solid #81C784 !important;
    border-left: 4px solid #4CAF50 !important;
    border-radius: 8px !important;
    position: relative !important;
  }
  
  .elementor-widget-theme-post-content .wp-block-group.success-box::before {
    content: "✅" !important;
    position: absolute !important;
    top: 1rem !important;
    right: 1rem !important;
    font-size: 1.25rem !important;
  }
  
  /* Key Point Box - add class "key-point" */
  .elementor-widget-theme-post-content .wp-block-group.key-point {
    margin: 2rem 0 !important;
    padding: 1.5rem 2rem !important;
    background: linear-gradient(135deg, var(--e-global-color-primary, #111111) 0%, var(--e-global-color-accent, #FC9700) 100%) !important;
    color: white !important;
    border-radius: 12px !important;
    position: relative !important;
    box-shadow: 0 4px 12px rgba(255, 84, 112, 0.2) !important;
  }
  
  .elementor-widget-theme-post-content .wp-block-group.key-point::before {
    content: "📌" !important;
    position: absolute !important;
    top: 1rem !important;
    right: 1.5rem !important;
    font-size: 1.25rem !important;
  }
  
  .elementor-widget-theme-post-content .wp-block-group.key-point p {
    color: white !important;
    font-weight: 400 !important;
    line-height: 1.7rem !important;
  }
  
  .elementor-widget-theme-post-content .wp-block-group.key-point h3,
  .elementor-widget-theme-post-content .wp-block-group.key-point h4 {
    color: white !important;
    font-weight: 600 !important;
    margin-top: 0 !important;
  }
  
  /* === IMAGES AND MEDIA === */
  .elementor-widget-theme-post-content img {
    max-width: 100% !important;
    height: auto !important;
    border-radius: 8px !important;
    margin: 1.5rem 0 !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1) !important;
  }
  
  .elementor-widget-theme-post-content figure {
    margin: 2rem 0 !important;
    text-align: center !important;
  }
  
  .elementor-widget-theme-post-content figcaption {
    font-size: 0.9rem !important;
    line-height: 1.5rem !important;
    color: var(--e-global-color-2104387, #666) !important;
    margin-top: 0.5rem !important;
    font-style: italic !important;
    font-weight: 400 !important;
    text-align: left !important;
  }
  
  /* === TABLE STYLING === */
  .elementor-widget-theme-post-content table {
    width: 100% !important;
    border-collapse: collapse !important;
    margin: 2rem 0 !important;
    background: var(--e-global-color-b6ee983, #ffffff) !important;
    border-radius: 8px !important;
    overflow: hidden !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1) !important;
  }
  
  .elementor-widget-theme-post-content th {
    background: var(--e-global-color-primary, #009FE4) !important;
    color: white !important;
    padding: 1rem !important;
    text-align: left !important;
    font-weight: 600 !important;
    font-size: 1rem !important;
    line-height: 1.6rem !important;
  }
  
  .elementor-widget-theme-post-content td {
    padding: 1rem !important;
    border-bottom: 1px solid var(--e-global-color-divider, #E5E5E5) !important;
    font-size: 1rem !important;
    line-height: 1.7rem !important;
    font-weight: 400 !important;
  }
  
  .elementor-widget-theme-post-content tr:nth-child(even) {
    background: var(--e-global-color-c6eb9e4, #F8F9FA) !important;
  }
  
  /* === CODE BLOCKS === */
  .elementor-widget-theme-post-content code {
    background: var(--e-global-color-c6eb9e4, #F8F9FA) !important;
    padding: 0.2em 0.4em !important;
    border-radius: 4px !important;
    font-family: "SFMono-Regular", "Monaco", "Inconsolata", "Fira Code", monospace !important;
    font-size: 0.9em !important;
    font-weight: 400 !important;
    color: var(--e-global-color-primary, #009FE4) !important;
  }
  
  .elementor-widget-theme-post-content pre {
    background: var(--e-global-color-2104387, #2D3748) !important;
    color: #E2E8F0 !important;
    padding: 1.5rem !important;
    border-radius: 8px !important;
    overflow-x: auto !important;
    margin: 2rem 0 !important;
    font-family: "SFMono-Regular", "Monaco", "Inconsolata", "Fira Code", monospace !important;
    font-size: 0.9rem !important;
    font-weight: 400 !important;
    line-height: 1.5 !important;
  }
  
  .elementor-widget-theme-post-content pre code {
    background: none !important;
    padding: 0 !important;
    color: inherit !important;
    font-size: inherit !important;
    font-weight: inherit !important;
  }
  
  /* === HORIZONTAL RULE === */
  .elementor-widget-theme-post-content hr {
    border: none !important;
    height: 2px !important;
    background: linear-gradient(90deg, transparent, var(--e-global-color-primary, #009FE4), transparent) !important;
    margin: 3rem 0 !important;
  }
  
  /* === RESPONSIVE DESIGN === */
  
  /* Tablet */
  @media (max-width: 1024px) {
    .elementor-widget-theme-post-content p {
      font-size: 1.15rem !important;
      line-height: 1.75rem !important;
    }
    
    
    .elementor-widget-theme-post-content h1 {
      font-size: 2rem !important;
      line-height: 2.4rem !important;
    }
    
    .elementor-widget-theme-post-content h2 {
      font-size: 1.6rem !important;
      line-height: 2.2rem !important;
    }
    
    .elementor-widget-theme-post-content h3 {
      font-size: 1.375rem !important;
      line-height: 2rem !important;
    }
    
    .elementor-widget-theme-post-content .wp-block-group.info-box,
    .elementor-widget-theme-post-content .wp-block-group.warning-box,
    .elementor-widget-theme-post-content .wp-block-group.success-box,
    .elementor-widget-theme-post-content .wp-block-group.key-point {
      padding: 1.25rem !important;
    }
  }
  
  /* Mobile */
  @media (max-width: 768px) {
    .elementor-widget-theme-post-content p {
      font-size: 1.1rem !important;
      line-height: 1.8rem !important;
      margin-bottom: 1.25rem !important;
    }
    
    .elementor-widget-theme-post-content h1 {
      font-size: 1.75rem !important;
      line-height: 2.2rem !important;
    }
    
    .elementor-widget-theme-post-content h2 {
      font-size: 1.5rem !important;
      line-height: 2rem !important;
      margin: 2rem 0 1rem 0 !important;
    }
    
    .elementor-widget-theme-post-content h3 {
      font-size: 1.25rem !important;
      line-height: 1.8rem !important;
    }
    
    .elementor-widget-theme-post-content h4 {
      font-size: 1.125rem !important;
      line-height: 1.7rem !important;
    }
    
    .elementor-widget-theme-post-content ul li,
    .elementor-widget-theme-post-content ol li {
      font-size: 1rem !important;
      line-height: 1.7rem !important;
      padding-left: 1.25rem !important;
    }
    
    .elementor-widget-theme-post-content ol li {
      padding-left: 1.75rem !important;
    }
    
    .elementor-widget-theme-post-content blockquote {
      padding: 1.25rem 1.5rem 1.25rem 2.5rem !important;
      margin: 1.5rem 0 !important;
    }
    
    .elementor-widget-theme-post-content .wp-block-group.info-box,
    .elementor-widget-theme-post-content .wp-block-group.warning-box,
    .elementor-widget-theme-post-content .wp-block-group.success-box {
      padding: 1rem !important;
      margin: 1.5rem 0 !important;
    }
    
    .elementor-widget-theme-post-content .wp-block-group.key-point {
      padding: 1rem 1.5rem !important;
      margin: 1.5rem 0 !important;
    }
    
    .elementor-widget-theme-post-content table {
      font-size: 0.9rem !important;
    }
    
    .elementor-widget-theme-post-content th {
      line-height: 1.5rem !important;
    }
    
    .elementor-widget-theme-post-content td {
      padding: 0.75rem 0.5rem !important;
      line-height: 1.6rem !important;
    }
  }
  
  /* Small Mobile */
  @media (max-width: 480px) {
    .elementor-widget-theme-post-content p {
      font-size: 1rem !important;
      line-height: 1.7rem !important;
    }
    
    .elementor-widget-theme-post-content h1 {
      font-size: 1.5rem !important;
      line-height: 2rem !important;
    }
    
    .elementor-widget-theme-post-content h2 {
      font-size: 1.3rem !important;
      line-height: 1.8rem !important;
    }
    
    .elementor-widget-theme-post-content h3 {
      font-size: 1.15rem !important;
      line-height: 1.65rem !important;
    }
    
    .elementor-widget-theme-post-content blockquote {
      padding: 1rem 1.25rem 1rem 2rem !important;
    }
    
    .elementor-widget-theme-post-content .wp-block-group.key-point {
      padding: 1rem !important;
    }
  }
  
  /* === DARK MODE OVERRIDES === */
  body.dark .elementor-widget-theme-post-content p,
  body.dark .elementor-widget-theme-post-content li,
  body.dark .elementor-widget-theme-post-content h1,
  body.dark .elementor-widget-theme-post-content h2,
  body.dark .elementor-widget-theme-post-content h3,
  body.dark .elementor-widget-theme-post-content h4,
  body.dark .elementor-widget-theme-post-content h5,
  body.dark .elementor-widget-theme-post-content h6 {
    color: var(--e-global-color-text, #fafafa) !important;
  }
  
  body.dark .elementor-widget-theme-post-content h2 {
    border-bottom-color: var(--e-global-color-primary, #111111) !important;
  }
  
  body.dark .elementor-widget-theme-post-content blockquote {
    background: var(--e-global-color-2104387, #2D3748) !important;
    border-left-color: var(--e-global-color-primary, #111111) !important;
  }
  
  body.dark .elementor-widget-theme-post-content .wp-block-group.info-box {
    background: var(--e-global-color-2104387, #2D3748) !important;
    border-color: var(--e-global-color-divider, #444) !important;
  }
  
  body.dark .elementor-widget-theme-post-content .wp-block-group.warning-box {
    background: #3E2723 !important;
    border-color: #FF8A65 !important;
    border-left-color: #FF9800 !important;
  }
  
  body.dark .elementor-widget-theme-post-content .wp-block-group.success-box {
    background: #1B5E20 !important;
    border-color: #66BB6A !important;
    border-left-color: #4CAF50 !important;
  }
  
  body.dark .elementor-widget-theme-post-content table {
    background: var(--e-global-color-background, #222222) !important;
  }
  
  body.dark .elementor-widget-theme-post-content td {
    border-bottom-color: var(--e-global-color-divider, #444) !important;
  }
  
  body.dark .elementor-widget-theme-post-content tr:nth-child(even) {
    background: var(--e-global-color-2104387, #2D3748) !important;
  }
  
  body.dark .elementor-widget-theme-post-content code {
    background: var(--e-global-color-2104387, #2D3748) !important;
    color: var(--e-global-color-primary, #009FE4) !important;
  }
  
  body.dark .elementor-widget-theme-post-content figcaption {
    color: var(--e-global-color-text, #fafafa) !important;
    opacity: 0.8 !important;
  }
  
  /* Korean Patch Story System Styles - LIGHT MODE ONLY */
  
  .elementor-shortcode .kp-featured {
    background: var(--e-global-color-b6ee983, #ffffff) !important;
    margin-bottom: 2rem !important;
    transition: all 0.3s ease !important;
    max-width: 100% !important;
    overflow: hidden !important;
  }
  
  /* ==============================
     OPINION SIDEBAR LOOP
     ============================== */
  .elementor-shortcode .kp-opinion-sidebar { display:block !important; }
  .elementor-shortcode .kp-opinion-item { display:flex !important; flex-direction:column !important; gap:.5rem !important; padding: .75rem 0 !important; border-bottom: 1px solid var(--e-global-color-divider, #E5E5E5) !important; }
  .elementor-shortcode .kp-opinion-item:last-child { border-bottom: none !important; }
  .elementor-shortcode .kp-opinion-item__image img { width:100% !important; height:auto !important; display:block !important; border-radius:4px !important; }
  .elementor-shortcode .kp-opinion-item__meta { display:flex !important; align-items:center !important; gap:.5rem !important; margin-top:.25rem !important; }
  .elementor-shortcode .kp-opinion-item__type { font-size:1.1rem !important; color: var(--e-global-color-secondary, #00B8B4) !important; font-weight:600 !important; }
  .elementor-shortcode .kp-opinion-item__logo svg { width:18px !important; height:18px !important; display:inline-block !important; }
  .elementor-shortcode .kp-opinion-item__title { font-size: 1rem !important; line-height: 1.35 !important; margin:0 !important; }
  .elementor-shortcode .kp-opinion-item__title a { color: var(--e-global-color-text, #111111) !important; text-decoration:none !important; }
  .elementor-shortcode .kp-opinion-item__title a:hover { color: var(--e-global-color-text, #111111) !important; }
  
  /* Dark mode */
  body.dark .elementor-shortcode .kp-opinion-item { border-color: var(--e-global-color-divider, #444) !important; }
  body.dark .elementor-shortcode .kp-opinion-item__title a { color: var(--e-global-color-text, #fafafa) !important; }
  body.dark .elementor-shortcode .kp-opinion-item__type { color: var(--e-global-color-text, #fafafa) !important; opacity: .85 !important; }
  
  .elementor-shortcode .kp-featured__header {
    padding: 1.5rem 1.5rem 1rem !important;
    text-align: center !important;
  }
  
  .elementor-shortcode .kp-featured__title {
    margin: 0 0 0.75rem 0 !important;
    text-align: left !important;
  }
  
  /* ABSOLUTE NUCLEAR SPECIFICITY - FUCK ELEMENTOR */
  
  /* Target the exact Elementor widget structure */
  .elementor-element.elementor-element-e40b7b0.elementor-widget.elementor-widget-shortcode .elementor-shortcode article.kp-featured header.kp-featured__header h1.kp-featured__title a,
  .elementor-kit-17 .elementor-element.elementor-widget-shortcode .elementor-shortcode article.kp-featured header.kp-featured__header h1.kp-featured__title a,
  html body .elementor-shortcode article.kp-featured header.kp-featured__header h1.kp-featured__title a {
    color: var(--e-global-color-text) !important;
    font-family: "Noto Sans KR", Sans-serif !important;
    font-size: 2.4rem !important;
    font-weight: 700 !important;
    text-transform: lowercase !important;
    line-height: 3rem !important;
    letter-spacing: -0.05em !important;
    text-decoration: none !important;
    transition: color 0.3s ease !important;
  }
  
  /* Style the H1 itself too */
  .elementor-element.elementor-element-e7dd324.elementor-widget.elementor-widget-shortcode .elementor-shortcode article.kp-featured header.kp-featured__header h1.kp-featured__title,
  .elementor-kit-17 .elementor-element.elementor-widget-shortcode .elementor-shortcode article.kp-featured header.kp-featured__header h1.kp-featured__title,
  html body .elementor-shortcode article.kp-featured header.kp-featured__header h1.kp-featured__title {
    margin: 0 0 0.75rem 0 !important;
    text-align: left !important;
    color: var(--e-global-color-text, #111111) !important;
    font-family: "Noto Sans KR", sans-serif !important;
    font-size: inherit !important;
    font-weight: inherit !important;
    line-height: inherit !important;
    letter-spacing: inherit !important;
    text-transform: inherit !important;
  }
  
  .elementor-shortcode .kp-featured__content {
    display: flex !important;
    gap: 16px !important;
    padding: 0 0rem 0.75rem !important;
    align-items: flex-start !important;
  }
  
  .elementor-shortcode .kp-featured__text {
    flex: 0 0 33.3333% !important;
    max-width: 33.3333% !important;
  }
  
  .elementor-shortcode .kp-featured__excerpt {
    font-family: var(--e-global-typography-text-font-family, "Noto Sans KR"), Sans-serif !important;
    font-size: .9rem !important;
    font-weight: var(--e-global-typography-text-font-weight, 400) !important;
    line-height: 1.4rem !important;
    color: var(--e-global-color-text, #111111) !important;
    letter-spacing: -.5px;
  }
  
  .elementor-shortcode .kp-featured__excerpt p {
    margin: 0 !important;
    font-family: "Noto Sans KR", sans-serif !important;
    font-size: inherit !important;
    font-weight: inherit !important;
    line-height: inherit !important;
    color: inherit !important;
    letter-spacing: -.5px;
  }
  
  .elementor-shortcode .kp-featured__image {
    flex: 0 0 66.6667% !important;
    max-width: 66.6667% !important;
    position: relative !important;
  }
  
  .elementor-shortcode .kp-featured__image-wrapper {
    position: relative !important;
    width: 100% !important;
    padding-bottom: 56.25% !important; /* 16:9 aspect ratio */
    overflow: hidden !important;
  }
  
  .elementor-shortcode .kp-featured__image img {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    transition: transform 0.3s ease !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    margin: 0 !important;
  }
  
  
  .elementor-shortcode .kp-featured__image a:hover img {
    transform: scale(1.02) !important;
  }
  
  /* Regular Posts Grid - High Specificity to Override Elementor */
  .elementor-shortcode .kp-regular-grid {
    margin-bottom: 2rem !important;
  }
  
  .elementor-shortcode .kp-regular-container {
    display: grid !important;
    gap: 0.75rem !important;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)) !important;
  }
  
  /* Column-specific layouts with high specificity */
  .elementor-shortcode .elementor-grid-1 .kp-regular-container {
    grid-template-columns: 1fr !important;
  }
  
  .elementor-shortcode .elementor-grid-2 .kp-regular-container {
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)) !important;
  }
  
  .elementor-shortcode .elementor-grid-3 .kp-regular-container {
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)) !important;
  }
  
  .elementor-shortcode .elementor-grid-4 .kp-regular-container {
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)) !important;
  }
  
  /* Regular Post Item - Maximum Specificity */
  .elementor-shortcode .kp-regular-item {
    display: flex !important;
    flex-direction: column !important;
    background: var(--e-global-color-b6ee983, #ffffff) !important;
    overflow: hidden !important;
    transition: all 0.3s ease !important;
    border: none !important;
    border-bottom: 1px solid var(--e-global-color-divider, #444) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    margin: 0 !important;
    padding: 0.75rem !important;
  }
  
  .elementor-shortcode .kp-regular-item:last-child {
    border-bottom: none !important;
  }
  
  .elementor-shortcode .kp-regular-item__content {
    display: flex !important;
    gap: 0.75rem !important;
    align-items: flex-start !important;
  }
  
  .elementor-shortcode .kp-regular-item__image {
    flex: 0 0 20% !important;
    max-width: 20% !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  
  .elementor-shortcode .kp-regular-item__image img {
    width: 100% !important;
    height: auto !important;
    object-fit: cover !important;
    transition: transform 0.3s ease !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    margin: 0 !important;
  }
  
  .elementor-shortcode .kp-regular-item__title,
  .elementor-shortcode .kp-regular-item h2.kp-regular-item__title {
    font-size: 1.3rem !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
    margin: 0 !important;
    text-align: left !important;
    color: var(--e-global-color-text, #111111) !important;
    letter-spacing: -0.05em;
  }
  
  .elementor-shortcode .kp-regular-item__title a,
  .elementor-shortcode .kp-regular-item h2.kp-regular-item__title a {
    font-size: 1.3rem !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
    margin: 0 !important;
    text-align: left !important;
    color: var(--e-global-color-text, #111111) !important;
  }
  
  .elementor-shortcode .kp-regular-item__title a:hover,
  .elementor-shortcode .kp-regular-item h2.kp-regular-item__title a:hover {
    color: var(--e-global-color-primary, #111111) !important;
  }
  
  .elementor-shortcode .kp-regular-item__excerpt {
    font-family: var(--e-global-typography-text-font-family, "Noto Sans KR"), Sans-serif !important;
    font-size: 0.9rem !important;
    font-weight: var(--e-global-typography-text-font-weight, 400) !important;
    flex: 1 !important;
    font-size: 0.9rem !important;
    line-height: 1.5 !important;
    color: var(--e-global-color-text, #111111) !important;
  }
  
  .elementor-shortcode .kp-regular-item__excerpt p {
    margin: 0 !important;
    font-family: "Noto Sans KR", sans-serif !important;
    font-size: inherit !important;
    font-weight: inherit !important;
    line-height: inherit !important;
    color: inherit !important;
  }
  
  /* Progressive Posts List - High Specificity to Override Elementor */
  .elementor-shortcode .kp-progressive-posts {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    background: var(--e-global-color-b6ee983, #ffffff) !important;
    overflow: hidden !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
  }
  
  .elementor-shortcode .kp-progressive-posts li {
    border-bottom: 1px solid var(--e-global-color-c6eb9e4, #F5F5F5) !important;
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  
  .elementor-shortcode .kp-progressive-posts li:last-child {
    border-bottom: none !important;
  }
  
  .elementor-shortcode .kp-progressive-posts a {
    display: block !important;
    padding: 1rem 1.25rem !important;
    color: var(--e-global-color-text, #111111) !important;
    text-decoration: none !important;
    transition: all 0.3s ease !important;
    font-family: var(--e-global-typography-66879b4-font-family, "Noto Sans KR"), Sans-serif !important;
    font-size: var(--e-global-typography-66879b4-font-size, 1.1rem) !important;
    font-weight: var(--e-global-typography-66879b4-font-weight, 600) !important;
    text-transform: var(--e-global-typography-66879b4-text-transform, lowercase) !important;
    line-height: var(--e-global-typography-66879b4-line-height, 1.4) !important;
    letter-spacing: var(--e-global-typography-66879b4-letter-spacing, 0.05rem) !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    margin: 0 !important;
  }
  
  .elementor-shortcode .kp-progressive-posts a:hover {
    background-color: var(--e-global-color-accent, #333) !important;
    color: var(--e-global-color-text, #111111) !important;
  }
  
  /* Responsive Design */
  @media (max-width: 768px) {
    .elementor-shortcode .kp-featured__content {
        flex-direction: column !important;
    }
    
    .elementor-shortcode .kp-featured__text,
    .elementor-shortcode .kp-featured__image {
        flex: 1 1 100% !important;
        max-width: 100% !important;
    }
    
    .elementor-shortcode .kp-featured__image {
        order: -1 !important;
    }
  
    .kp-featured__title {
        font-size: 1.5rem;
    }
    
    .kp-regular-container {
        grid-template-columns: 1fr;
        gap: 1rem;
    }
    
    .kp-featured__header {
        padding: 1rem 1rem 0;
    }
  }
  
  @media (max-width: 480px) {
    .kp-featured__title {
        font-size: 1.3rem;
    }
    
    .kp-regular-item__content {
        padding: 1rem;
    }
    
    .kp-regular-item__image img {
        height: 180px;
    }
  }
  
  /* =========================================
   ALL DARK MODE RULES - MAXIMUM PRIORITY
   ========================================= */
  
  /*  BACKGROUND - Guarantees whole site bg is dark in dark mode */
  html.dark, html.dark body { background:#0a0a0a !important; color:#e5e5e5; }
  
  html body,
  html body.elementor-element-e40b7b0 {
    background: #FFF !important;
    background-color: #FFF !important;
  }

  body.dark, html.dark body.dark, html.dark {
  background: #222222 !important;
  background-color: #222222 !important;
  color: #fafafa !important;
  }
  
  body.dark {
  /* bando dark palette overrides */
  --e-global-color-background: #222222 !important;
  --e-global-color-text: #fafafa !important;
  --e-global-color-primary: #009FE4;
  --e-global-color-secondary: #00B8B4;
  --e-global-color-text: #2A2A2A;
  --e-global-color-accent: #FC9700;
  --e-global-color-ca9b329: #2A2A2A;
  --e-global-color-c506f65: #FFFFFF;
  --e-global-color-0caa417: #F87614; /* Rover Orange Button*/
  --e-global-color-e4016f3: #000000; 
  --e-global-color-divider: #444 !important;
  --e-a-color-txt: #fafafa !important;
  }
  
  /* NUCLEAR DARK MODE - HIGHEST SPECIFICITY */
  html.dark body.dark,
  body.dark.bando,
  .dark body.dark,
  html.dark body.dark {
  background: #222222 !important;
  background-color: #222222 !important;
  color: #fafafa !important;
  }
  
  /* Force Elementor containers */
  body.dark .elementor-section,
  body.dark .elementor-container,
  body.dark .elementor-widget-container,
  body.dark .elementor-element {
  background-color: transparent !important;
  }
  
  /* Force page background */
  body.dark #page,
  body.dark .site,
  body.dark .site-content {
  background: #222222 !important;
  background-color: #222222 !important;
  }
  
/* HEADER/FOOTER: Only top-level container gets bg, children keep their own */
  body.dark .elementor-3708 .elementor-element.elementor-element-55bf9b8,
  body.dark .elementor-3708 .elementor-element.elementor-element-55bf9b8 > .elementor-motion-effects-container > .elementor-motion-effects-layer,
  body.dark .elementor-3772 .elementor-element.elementor-element-df277c2,
  body.dark .elementor-3772 .elementor-element.elementor-element-df277c2 > .elementor-motion-effects-container > .elementor-motion-effects-layer,
  body.dark .elementor-3742 .elementor-element.elementor-element-7feab00a { 
    background: #000 !important;
    background-color: #000 !important;
    color: var(--e-global-color-text, #fafafa) !important;
  }
  
  body.dark .elementor-element.elementor-element-09f5b80,
  body.dark .elementor-element.elementor-element-09f5b80 .elementor-nav-menu--main,
  body.dark .elementor-element.elementor-element-09f5b80 nav,
  body.dark .elementor-element.elementor-element-09f5b80 .elementor-nav-menu,
  body.dark .elementor-element.elementor-element-09f5b80 .elementor-widget-container {
    background: #222222 !important;
    background-color: #222222 !important;
    color: #fafafa !important;
  }
  
  body.dark .elementor-element.elementor-element-09f5b80 .elementor-nav-menu--dropdown,
  body.dark .elementor-element.elementor-element-eabda3f {
    background: #222222 !important;
    background-color: #222222 !important;
  }
  
  body.dark .elementor-element.elementor-element-eabda3f,
  body.dark .elementor-element.elementor-element-eabda3f .elementor-nav-menu--main,
  body.dark .elementor-element.elementor-element-eabda3f nav,
  body.dark .elementor-element.elementor-element-eabda3f .elementor-nav-menu,
  body.dark .elementor-element.elementor-element-eabda3f .elementor-widget-container {
    background: #222222 !important;
    background-color: #222222 !important;
    color: #fafafa !important;
  }
  
  body.dark .elementor-element.elementor-element-eabda3f .elementor-nav-menu--dropdown {
    background: #222222 !important;
    background-color: #222222 !important;
  }
  
  /* ROVER BUTTON: always orange, everywhere */
  #rover-btn,
  .elementor-element.elementor-element-2991f9b,
  .elementor-element.elementor-element-2217ddb {
  background: var(--e-global-color-0caa417) !important;
  background-color: var(--e-global-color-0caa417) !important;
  color: #fff !important;
  border: none !important;
  border-radius: 8px !important;
  }
  
  /* Rover button: force white text/icon across states and preserve orange bg */
  #rover-btn,
  #rover-btn:link,
  #rover-btn:visited,
  #rover-btn:hover,
  #rover-btn:active,
  #rover-btn:focus {
  color: #fff !important;
  text-decoration: none !important;
  border-radius: 8px !important;
  }
  
  #rover-btn .elementor-button-content-wrapper,
  #rover-btn .elementor-button-text,
  #rover-btn .elementor-button-icon {
  color: #fff !important;
  border-radius: 8px !important;
  border: none !important;
  }
  
  #rover-btn svg,
  #rover-btn .elementor-button-icon svg,
  #rover-btn svg path {
  fill: #fff !important;
  color: #fff !important;
  }
  
  #rover-btn:hover,
  #rover-btn:focus,
  #rover-btn:active {
  background: var(--e-global-color-0caa417) !important;
  background-color: var(--e-global-color-0caa417) !important;
  border-color: transparent !important;
  border-radius: 8px !important;
  border: none !important;
  }
  
  /* Rover button: icon should match text height responsively */
  #rover-btn .elementor-button-content-wrapper {
  display: inline-flex !important;
  align-items: center !important;
  gap: 0.5em !important;
  border-radius: 8px !important;
  border: none !important;
  }
  
  #rover-btn .elementor-button-text {
  line-height: 1 !important;
  }
  
  #rover-btn .elementor-button-icon {
  display: inline-flex !important;
  align-items: center !important;
  font-size: 1em !important;
  }
  
  #rover-btn .elementor-button-icon svg {
  height: 1em !important;
  width: auto !important;
  vertical-align: middle !important;
  }
  
  /* Rover button: mobile - show icon only */
  @media (max-width: 768px) {
  #rover-btn .elementor-button-text { display: none !important; }
  #rover-btn .elementor-button-content-wrapper { gap: 0 !important; }
  #rover-btn { border-radius: 8px !important;
  border: none !important;
  }}
  
  /* Remove background from widget containers & known image/heading widgets inside all Rover buttons */
  #rover-btn .elementor-widget-container,
  .elementor-element.elementor-element-c605961 .elementor-widget-container,
  .elementor-element.elementor-element-2217ddb .elementor-widget-container,
  #rover-btn .elementor-element-3d0e2803,
  #rover-btn .elementor-element-136c46c5,
  #rover-btn .elementor-element-3d0e2803 .elementor-widget-container,
  #rover-btn .elementor-element-136c46c5 .elementor-widget-container,
  .elementor-element.elementor-element-c605961 .elementor-element-3d0e2803,
  .elementor-element.elementor-element-c605961 .elementor-element-136c46c5,
  .elementor-element.elementor-element-c605961 .elementor-element-3d0e2803 .elementor-widget-container,
  .elementor-element.elementor-element-c605961 .elementor-element-136c46c5 .elementor-widget-container,
  .elementor-element.elementor-element-2217ddb .elementor-element-a5d5e03,
  .elementor-element.elementor-element-2217ddb .elementor-element-1ec5d33,
  .elementor-element.elementor-element-2217ddb .elementor-element-a5d5e03 .elementor-widget-container,
  .elementor-element.elementor-element-2217ddb .elementor-element-1ec5d33 .elementor-widget-container {
  background: none !important;
  background-color: transparent !important;
  border-radius: 8px !important;
  border: none !important;
  }
  
  /* HEADINGS, LINKS, ETC */
  body.dark h1,
  body.dark h2,
  body.dark h3,
  body.dark h4,
  body.dark h5,
  body.dark h6,
  body.dark a,
  body.dark .elementor-heading-title,
  body.dark .elementor-widget-heading a {
  color: #FFF !important;
  }
  
  /* Divider */
  body.dark .elementor-divider-separator {
  border-color: var(--e-global-color-divider, #444) !important;
  background: var(--e-global-color-divider, #444) !important;
  }
  
  /* Buttons (palette/brand) */
  body.dark .elementor-button {
  background: var(--e-global-color-primary, #009FE4) !important;
  color: var(--e-global-color-text, #fafafa) !important;
  }
  
  /* SVG/Icons */
  body.dark svg,
  body.dark .elementor-icon svg {
  fill: var(--e-global-color-text, #fafafa) !important;
  color: var(--e-global-color-text, #fafafa) !important;
  }
  
  
  /* Inputs */
  body.dark input,
  body.dark textarea,
  body.dark select {
  background: #232740 !important;
  color: #fafafa !important;
  border-color: var(--e-global-color-divider, #444) !important;
  }
  
  /* Text editor / widget content enforcement */
  body.dark .elementor-text-editor,
  body.dark .elementor-widget-text-editor,
  body.dark .elementor-widget-content {
  color: var(--e-global-color-text, #fafafa) !important;
  }
  
  /* KOREAN PATCH STORY SYSTEM DARK MODE - HIGHEST SPECIFICITY */
  
  /* Featured Post Dark Mode */
  body.dark .elementor-shortcode .kp-featured {
    background: var(--e-global-color-background, #222222) !important;
    border-color: var(--e-global-color-divider, #444) !important;
  }
  
  body.dark .elementor-shortcode .kp-featured__title,
  body.dark .elementor-shortcode .kp-featured h1.kp-featured__title {
    color: var(--e-global-color-text, #fafafa) !important;
  }
  
  body.dark .elementor-shortcode .kp-featured__title a,
  body.dark .elementor-shortcode .kp-featured h1.kp-featured__title a {
    color: var(--e-global-color-text, #fafafa) !important;
    font-family: "Noto Sans KR", Sans-serif !important;
    font-size: 2.4rem !important;
    font-weight: 700 !important;
    text-transform: lowercase !important;
    line-height: 3rem !important;
    letter-spacing: -0.05em !important;
  }
  
  body.dark .elementor-shortcode .kp-featured__title a:hover,
  body.dark .elementor-shortcode .kp-featured h1.kp-featured__title a:hover {
    color: var(--e-global-color-primary, #009FE4) !important;
  }
  
  body.dark .elementor-shortcode .kp-featured__excerpt,
  body.dark .elementor-shortcode .kp-featured__excerpt p {
    color: var(--e-global-color-text, #fafafa) !important;
  }
  
  body.dark .elementor-shortcode .kp-featured__image img {
    border-color: var(--e-global-color-divider, #444) !important;
  }
  
  /* Regular Posts Dark Mode */
  body.dark .elementor-shortcode .kp-regular-item {
    background: var(--e-global-color-background, #222222) !important;
    border-bottom-color: var(--e-global-color-divider, #444) !important;
  }
  
  body.dark .elementor-shortcode .kp-regular-item__image {
    background: var(--e-global-color-2104387, #444) !important;
  }
  
  body.dark .elementor-shortcode .kp-regular-item__title,
  body.dark .elementor-shortcode .kp-regular-item h2.kp-regular-item__title {
    color: var(--e-global-color-text, #fafafa) !important;
  }
  
  body.dark .elementor-shortcode .kp-regular-item__title a,
  body.dark .elementor-shortcode .kp-regular-item h2.kp-regular-item__title a {
    color: var(--e-global-color-text, #fafafa) !important;
  }
  
  body.dark .elementor-shortcode .kp-regular-item__title a:hover,
  body.dark .elementor-shortcode .kp-regular-item h2.kp-regular-item__title a:hover {
    color: var(--e-global-color-primary, #009FE4) !important;
  }
  
  body.dark .elementor-shortcode .kp-regular-item__excerpt,
  body.dark .elementor-shortcode .kp-regular-item__excerpt p {
    color: var(--e-global-color-text, #fafafa) !important;
  }
  
  /* Progressive Posts Dark Mode */
  body.dark .elementor-shortcode .kp-progressive-posts {
    background: var(--e-global-color-background, #222222) !important;
    border-color: var(--e-global-color-divider, #444) !important;
    box-shadow: 4px 4px 0px 0px var(--e-global-color-divider, #444) !important;
  }
  
  body.dark .elementor-shortcode .kp-progressive-posts li {
    border-bottom-color: var(--e-global-color-divider, #444) !important;
  }
  
  body.dark .elementor-shortcode .kp-progressive-posts a {
    color: var(--e-global-color-text, #fafafa) !important;
  }
  
  body.dark .elementor-shortcode .kp-progressive-posts a:hover {
    background-color: var(--e-global-color-accent, #FC9700) !important;
    color: var(--e-global-color-4c11e95, #111111) !important;
  }
  
  
  /* ==============================
              STOCK TICKER
     ============================== */
  
  /* Stock Ticker - Working Single Animation */
  .kp-stock-slider-wrap {
    width: 100%;
    max-width: 100%;
    margin: 1rem 0;
  }
  
  .kp-stock-bar {
    display: flex;
    align-items: center;
    width: 100%;
    background: linear-gradient(90deg, #009FE4 0%, #0c2936 20%, #333 21%, #333 100%);
    height: 60px;
    border-radius: 0;
    overflow: hidden;
  }
  
  .kp-stock-head {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 1rem;
    color: #fff;
    flex-shrink: 0;
  }
  
  .kp-stock-head-title {
    font-weight: 800;
    font-size: 1.25rem;
    text-shadow: 0px 1px 6px #333;
  }
  
  .kp-stock-head-link {
    color: #fff;
    text-decoration: none;
  }
  
  .kp-stock-head-sub {
    color: #ddd;
    font-size: 0.85rem;
    font-weight: 500;
    letter-spacing: -0.02em;
    margin-left: 0.5rem;
  }
  
  .kp-stock-track {
    flex: 1;
    overflow: hidden;
    position: relative;
    height: 36px;
    /* Fade edges */
    mask-image: linear-gradient(90deg, 
        rgba(0,0,0,0) 0px, 
        rgba(0,0,0,1) 40px, 
        rgba(0,0,0,1) calc(100% - 40px), 
        rgba(0,0,0,0) 100%
    );
    -webkit-mask-image: linear-gradient(90deg, 
        rgba(0,0,0,0) 0px, 
        rgba(0,0,0,1) 40px, 
        rgba(0,0,0,1) calc(100% - 40px), 
        rgba(0,0,0,0) 100%
    );
  }
  
  .kp-stock-content {
    display: flex;
    align-items: center;
    height: 36px;
    white-space: nowrap;
    animation: ticker-scroll var(--duration, 30s) linear infinite;
    gap: 2rem;
    will-change: transform;
    position: absolute;
    top: 0;
    left: 0;
  }
  
  .kp-stock-content--clone {
    left: 100%;
  }
  
  .kp-stock-item {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    color: #fff;
    flex-shrink: 0;
  }
  
  .kp-stock-label {
    font-weight: 700;
    color: #fff;
  }
  
  .kp-stock-value {
    color: #fff;
  }
  
  .kp-stock-delta {
    font-weight: 600;
  }
  
  .kp-stock-direction.up::before {
    content: '▲';
    color: #ff5b5b;
    margin-right: 0.2rem;
  }
  
  .kp-stock-direction.down::before {
    content: '▼';
    color: #5ba2ff;
    margin-right: 0.2rem;
  }
  
  .kp-stock-datetime-container {
    display: flex;
    flex-direction: column;
    align-items: center;
    background: linear-gradient(270deg, #111, transparent);
    flex-shrink: 0;
  }
  
  .kp-stock-datetime {
    color: #fff;
    font-size: 0.85rem;
    padding: 0.5rem 1rem;
    align-content: center !important;
    flex-shrink: 0;
    height: 100%
  }
  
  .kp-stock-countdown {
    color: #fff;
    font-size: 0.75rem;
    padding: 0.25rem 1rem;
    background: linear-gradient(270deg, #222, transparent);
    font-weight: 600;
    flex-shrink: 0;
    display: flex;              
    align-items: center;
    gap: 0.25rem;              
  }
  
  .kp-stock-countdown .countdown-label {   
    color: #ddd;
    font-weight: 500;
  }
  
  .kp-stock-countdown .countdown-time {
    color: #ff5b5b;
    font-family: monospace;
    font-weight: 700;
  }
  
  
  .stock-text-red {
    color: #ff5b5b;
  }
  
  .stock-text-blue {
    color: #5ba2ff;
  }
  
  
  @keyframes ticker-scroll {
    0% {
        transform: translateX(0);
    }
    100% {
        transform: translateX(-100%);
    }
  }
  
  
  .elementor-shortcode .kp-stock-slider-wrap {
    width: 100% !important;
    margin: 1rem 0 !important;
  }
  
  .elementor-shortcode .kp-stock-bar {
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
    background: linear-gradient(90deg, #009FE4 0%, #0c2936 20%, #333 21%, #333 100%);
    height: 60px !important;
  }
  
  .elementor-shortcode .kp-stock-track {
    flex: 1 !important;
    overflow: hidden !important;
    position: relative !important;
    height: 36px !important;
    mask-image: linear-gradient(90deg, rgba(0,0,0,0) 0px, rgba(0,0,0,1) 40px, rgba(0,0,0,1) calc(100% - 40px), rgba(0,0,0,0) 100%) !important;
    -webkit-mask-image: linear-gradient(90deg, rgba(0,0,0,0) 0px, rgba(0,0,0,1) 40px, rgba(0,0,0,1) calc(100% - 40px), rgba(0,0,0,0) 100%) !important;
  }
  
  .elementor-shortcode .kp-stock-content {
    display: flex;
    align-items: center;
    height: 36px;
    white-space: nowrap;
    animation: ticker-scroll var(--duration, 30s) linear infinite;
    gap: 2rem;
    will-change: transform;
    position: absolute;
    top: 0;
    left: 0;
  }
  
  .elementor-shortcode .kp-stock-content--clone {
    left: 100% !important;
  }
  
  
  .elementor-shortcode .kp-stock-item {
    display: inline-flex !important;
    align-items: center !important;
    gap: 0.4rem !important;
    color: #fff !important;
    flex-shrink: 0 !important;
  }
  
  .elementor-shortcode .kp-stock-head {
    display: flex !important;
    align-items: center !important;
    gap: 0.5rem !important;
    padding: 0.5rem 1rem !important;
    color: #fff !important;
    flex-shrink: 0 !important;
  }
  
  .elementor-shortcode .kp-stock-head-title {
    font-weight: 800 !important;
    font-size: 1.25rem !important;
    text-shadow: 0px 1px 6px #333 !important;
  }
  
  .elementor-shortcode .kp-stock-head-sub {
    color: #ddd !important;
    font-size: 0.85rem !important;
    font-weight: 500 !important;
    letter-spacing: -0.02em !important;
    margin-left: 0.5rem !important;
  }
  
  .elementor-shortcode .kp-stock-datetime-container {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    background: linear-gradient(270deg, #111, transparent) !important;
    flex-shrink: 0 !important;
  }
  
  .elementor-shortcode .kp-stock-datetime {
    color: #fff !important;
    font-size: 0.85rem !important;
    padding: 0.5rem 1rem !important;
    align-content: center !important;
    flex-shrink: 0 !important;
    height: 100%
  }
  
  .elementor-shortcode .kp-stock-countdown {
    color: #fff !important;
    font-size: 0.75rem !important;
    padding: 0.25rem 1rem !important;
    font-weight: 600 !important;
    flex-shrink: 0 !important;
  }
  
  .elementor-shortcode .kp-stock-countdown .countdown-time {
    color: #ff5b5b !important;
    font-family: monospace !important;
    font-weight: 700 !important;
  }
  
  .elementor-shortcode .kp-stock-label {
    font-weight: 700 !important;
    color: #fff !important;
  }
  
  .elementor-shortcode .kp-stock-value {
    color: #fff !important;
  }
  
  .elementor-shortcode .kp-stock-delta {
    font-weight: 600 !important;
  }
  
  .elementor-shortcode .kp-stock-direction.up::before {
    content: '▲' !important;
    color: #ff5b5b !important;
    margin-right: 0.2rem !important;
  }
  
  .elementor-shortcode .kp-stock-direction.down::before {
    content: '▼' !important;
    color: #5ba2ff !important;
    margin-right: 0.2rem !important;
  }
  
  .elementor-shortcode .stock-text-red {
    color: #ff5b5b !important;
  }
  
  .elementor-shortcode .stock-text-blue {
    color: #5ba2ff !important;
  }
  
  /* =========================================
              TICKER DARK MODE
  ========================================= */
  body.dark .kp-stock-bar,
  body.dark .elementor-shortcode .kp-stock-bar {
    background: linear-gradient(90deg, #009FE4 0%, #0c2936 20%, #333 21%, #333 100%);
  }
  
  body.dark .kp-stock-item,
  body.dark .kp-stock-label,
  body.dark .kp-stock-value,
  body.dark .kp-stock-datetime,
  body.dark .elementor-shortcode .kp-stock-item,
  body.dark .elementor-shortcode .kp-stock-label,
  body.dark .elementor-shortcode .kp-stock-value,
  body.dark .elementor-shortcode .kp-stock-datetime {
    color: #fff !important;
  }
  
  body.dark .stock-text-red,
  body.dark .elementor-shortcode .stock-text-red {
    color: #ff7a7a !important;
  }
  
  body.dark .stock-text-blue,
  body.dark .elementor-shortcode .stock-text-blue {
    color: #7ab2ff !important;
  }
  
  /* Responsive design */
  @media (max-width: 768px) {
    .kp-stock-head-title,
    .elementor-shortcode .kp-stock-head-title {
        font-size: 1rem !important;
    }
    
    .kp-stock-head-sub,
    .elementor-shortcode .kp-stock-head-sub {
        display: none !important;
    }
    
    .kp-stock-datetime,
    .elementor-shortcode .kp-stock-datetime {
        font-size: 0.75rem !important;
        padding: 0.5rem !important;
        align-content: center !important;
        height: 100%
    }
  }
  /* ==============================
  WEATHER WIDGET (single + forecast)
  ============================== */
  .elementor-element-fc8bb28 .elementor-shortcode .korean-weather-widget {
    display: flex !important;
    align-items: center !important;
    gap: .5rem !important;
    padding: .5rem .75rem !important;
    background: var(--e-global-color-b6ee983, #ffffff) !important;

  }
  .elementor-element-fc8bb28 .elementor-shortcode .korean-weather-widget .weather-icon {
  font-size: 1.25rem !important;
  line-height: 1 !important;
  }
  
  .elementor-element-fc8bb28 .elementor-shortcode .korean-weather-widget .weather-temp {
    font-weight: 600 !important;
  }
  
  .elementor-element-fc8bb28 .elementor-shortcode .korean-weather-widget .weather-condition {
    color: var(--e-global-color-text, #111111) !important;
  }
  
  .elementor-element-fc8bb28 .elementor-shortcode .korean-weather-widget .weather-date {
    margin-left: auto !important;
    color: var(--e-global-color-text, #111111) !important;
    font-size: .9rem !important;
  }
  
  .elementor-element-fc8bb28 .elementor-shortcode .kp-weather-forecast {
    background: var(--e-global-color-b6ee983, #ffffff) !important;
    align-items: center !important;
    justify-content: center;
    width: 100%;
  }
  
  .elementor-element-fc8bb28 .elementor-shortcode .kp-weather-forecast__row {
    display: grid !important;
    grid-template-columns: 1fr !important; /* single column */
    gap: .75rem !important;
    align-items: center !important;
    justify-content: center !important;
    justify-items: center !important;
    width: 100%;
  }
  
  .elementor-element-fc8bb28 .elementor-shortcode .kp-weather-forecast__item {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: .35rem !important;
    padding: .75rem !important;
    width: 100%;
    background: var(--e-global-color-b6ee983, #ffffff) !important;
    border: 1px solid var(--e-global-color-c6eb9e4, #F0F0F0) !important;
  }
  
  .elementor-element-fc8bb28 .elementor-shortcode .kp-weather-forecast__label {
    font-size: .9rem !important;
    color: var(--e-global-color-text, #111111) !important;
  }
  
  .elementor-element-fc8bb28 .elementor-shortcode .kp-weather-forecast__icon {
    font-size: 1.5rem !important;
    line-height: 1 !important;
  }
  
  .elementor-element-fc8bb28 .elementor-shortcode .kp-weather-forecast__temps {
    font-size: .9rem !important;
  }
  
  .elementor-element-fc8bb28 .elementor-shortcode .kp-weather-forecast__temps .high { font-weight: 700 !important; }
  .elementor-shortcode .kp-weather-forecast__temps .low { opacity: .8 !important; }
  
  /* Dark mode for weather */
  body.dark .elementor-shortcode .korean-weather-widget,
  body.dark .elementor-element-fc8bb28 .elementor-shortcode .kp-weather-forecast,
  body.dark .elementor-element-fc8bb28 .elementor-shortcode .kp-weather-forecast__item {
    background: var(--e-global-color-background, #222222) !important;
    border-color: var(--e-global-color-divider, #444) !important;
    justify-content: center;
  }
  
  body.dark .elementor-element-fc8bb28 .elementor-shortcode .korean-weather-widget .weather-date,
  body.dark .elementor-element-fc8bb28 .elementor-shortcode .korean-weather-widget .weather-condition,
  body.dark .elementor-element-fc8bb28 .elementor-shortcode .kp-weather-forecast__label {
    color: var(--e-global-color-text, #fafafa) !important;
  }
  
  /* === STOCK TICKER STRUCTURAL OVERRIDES (final) === */
  .elementor-shortcode .kp-stock-track,
  .kp-stock-track { display:flex !important; align-items:center !important; flex-wrap: nowrap !important; min-width: 0 !important; }
  .elementor-shortcode .kp-stock-ticker { position: static !important; top: auto !important; left: auto !important; }
  .kp-stock-ticker { flex: 0 0 auto !important; margin-right: 0 !important; will-change: transform !important; white-space: nowrap !important; align-items: center !important; }
  .kp-stock-item { flex: 0 0 auto !important; display: inline-flex !important; align-items: center !important; white-space: nowrap !important; }
  .kp-stock-track .kp-stock-ticker:nth-child(2) { animation-delay: calc(var(--duration,30s) / -2) !important; }
  
  /* ==============================
     SEARCH RESULTS (outside Elementor)
     Match "regular items" loop styles
     ============================== */
  /* Header */
  .kp-search-header .page-title,
  .kp-search-header h1.page-title {
    font-family: var(--e-global-typography-text-font-family, "Noto Sans KR"), Sans-serif !important;
    font-size: 1.5rem !important;
    line-height: 2rem !important;
    font-weight: 700 !important;
    letter-spacing: -0.05em !important;
    margin: 0 0 1rem 0 !important;
    color: var(--e-global-color-text, #111111) !important;
  }
  .kp-search-header .kp-search-term { color: var(--e-global-color-primary, #111111) !important; }
  
  /* Grid + container */
  #kp-regular-grid.kp-regular-grid { margin-bottom: 2rem !important; }
  .kp-regular-container.kp-regular,
  .kp-search-results {
    display: grid !important;
    gap: 0.75rem !important;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)) !important;
  }
  
  /* Item */
  .kp-search-results .kp-regular-item {
    display: flex !important;
    flex-direction: column !important;
    background: var(--e-global-color-b6ee983, #ffffff) !important;
    border: none !important;
    border-bottom: 1px solid var(--e-global-color-c6eb9e4, #F0F0F0) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    margin: 0 !important;
    padding: 0.75rem !important;
  }
  .kp-search-results .kp-regular-item:last-child { border-bottom: none !important; }
  
  /* Horizontal image + content */
  .kp-search-results .kp-regular-item__content {
    display: flex !important;
    gap: 0.75rem !important;
    align-items: flex-start !important;
  }
  .kp-search-results .kp-regular-item__image {
    flex: 0 0 20% !important;
    max-width: 20% !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  .kp-search-results .kp-regular-item__image img {
    width: 100% !important;
    height: auto !important;
    object-fit: cover !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    margin: 0 !important;
  }
  
  /* Title + excerpt */
  .kp-search-results .kp-regular-item__title,
  .kp-search-results h2.kp-regular-item__title {
    font-size: 1.3rem !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
    margin: 0 !important;
    text-align: left !important;
    color: var(--e-global-color-text, #111111) !important;
    letter-spacing: -0.05em !important;
  }
  .kp-search-results .kp-regular-item__title a,
  .kp-search-results h2.kp-regular-item__title a {
    color: var(--e-global-color-text, #111111) !important;
    text-decoration: none !important;
  }
  .kp-search-results .kp-regular-item__title a:hover,
  .kp-search-results h2.kp-regular-item__title a:hover {
    color: var(--e-global-color-primary, #111111) !important;
  }
  .kp-search-results .kp-regular-item__excerpt {
    font-family: var(--e-global-typography-text-font-family, "Noto Sans KR"), Sans-serif !important;
    flex: 1 !important;
    font-size: 0.9rem !important;
    line-height: 1.5 !important;
    color: var(--e-global-color-text, #111111) !important;
  }
  .kp-search-results .kp-regular-item__excerpt p {
    margin: 0 !important;
  }
  
  /* Pagination minimal spacing */
  .site-main .pagination { margin-top: 1rem !important; }
  
  /* Responsive tweaks */
  @media (max-width: 768px) {
    .kp-regular-container.kp-regular,
    .kp-search-results { grid-template-columns: 1fr !important; gap: 1rem !important; }
  }
  @media (max-width: 480px) {
    .kp-search-results .kp-regular-item__image img { height: 180px !important; }
  }
  
  /* Dark mode for search results */
  body.dark .kp-search-header .page-title,
  body.dark .kp-search-header h1.page-title { color: var(--e-global-color-text, #fafafa) !important; }
  body.dark .kp-search-header .kp-search-term { color: var(--e-global-color-primary, #009FE4) !important; }
  body.dark .kp-search-results .kp-regular-item {
    background: var(--e-global-color-background, #222222) !important;
    border-bottom-color: var(--e-global-color-divider, #444) !important;
  }
  body.dark .kp-search-results .kp-regular-item__image { background: var(--e-global-color-2104387, #444) !important; }
  body.dark .kp-search-results .kp-regular-item__title,
  body.dark .kp-search-results h2.kp-regular-item__title,
  body.dark .kp-search-results .kp-regular-item__title a,
  body.dark .kp-search-results h2.kp-regular-item__title a { color: var(--e-global-color-text, #fafafa) !important; }
  body.dark .kp-search-results .kp-regular-item__title a:hover,
  body.dark .kp-search-results h2.kp-regular-item__title a:hover { color: var(--e-global-color-primary, #009FE4) !important; }
  body.dark .kp-search-results .kp-regular-item__excerpt,
  body.dark .kp-search-results .kp-regular-item__excerpt p { color: var(--e-global-color-text, #fafafa) !important; }

  /* ==============================
     BANDO CLASS SYSTEM - CUSTOM LAYOUTS
     ============================== */

  /* === BANDO FEATURED === */

  /* Bando Featured: Side-by-side layout like 한겨레 */
  .elementor-element .elementor-shortcode .kp-featured.bando .kp-featured__content {
    flex-direction: row !important;
    gap: 2rem !important;
  }

  .elementor-element .elementor-shortcode .kp-featured.bando .kp-featured__text {
    flex: 0 0 65% !important;
    max-width: 65% !important;
    order: 1 !important;
  }

  .elementor-element .elementor-shortcode .kp-featured.bando .kp-featured__image {
    flex: 0 0 35% !important;
    max-width: 35% !important;
    order: 2 !important;
  }

  /* Title positioning for Bando */
  .elementor-element .elementor-shortcode .kp-featured.bando .kp-featured__header {
    padding: 0 !important;
    text-align: left !important;
    margin-bottom: 1rem !important;
  }

  .elementor-element .elementor-shortcode .kp-featured.bando .kp-featured__title,
  .elementor-element .elementor-shortcode .kp-featured.bando h1.kp-featured__title {
    text-align: left !important;
    margin: 0 0 0.75rem 0 !important;
    font-size: 1.8rem !important;
    line-height: 2.2rem !important;
  }

  /* Special text highlighting */
  .elementor-element .elementor-shortcode .kp-featured.bando .kp-featured__title a,
  .elementor-element .elementor-shortcode .kp-featured.bando h1.kp-featured__title a {
    font-size: 1.8rem !important;
    line-height: 2.2rem !important;
  }

   /* === SMART NEWS BADGES SYSTEM === */
  
  /* Featured items with breaking/exclusive badges */
  .elementor-element .elementor-shortcode .kp-featured.bando[data-breaking="true"] .kp-featured__title::before,
  .elementor-element .elementor-shortcode .kp-featured.bando[data-exclusive="true"] .kp-featured__title::before,
  .elementor-element .elementor-shortcode .kp-featured.bando[data-urgent="true"] .kp-featured__title::before,
  .elementor-element .elementor-shortcode .kp-featured.bando[data-live="true"] .kp-featured__title::before {
    display: inline-block;
    font-weight: 700;
    font-size: 0.8rem;
    padding: 0.2rem 0.5rem;
    margin-right: 0.5rem;
    border-radius: 3px;
    color: white;
    vertical-align: middle;
    text-transform: uppercase;
  }

  .elementor-element .elementor-shortcode .kp-featured.bando[data-breaking="true"] .kp-featured__title::before {
    content: "속보";
    background: #ff5b5b;
  }

  .elementor-element .elementor-shortcode .kp-featured.bando[data-exclusive="true"] .kp-featured__title::before {
    content: "단독";
    background: #ff9800;
  }

  .elementor-element .elementor-shortcode .kp-featured.bando[data-urgent="true"] .kp-featured__title::before {
    content: "긴급";
    background: #ff1744;
  }

  .elementor-element .elementor-shortcode .kp-featured.bando[data-live="true"] .kp-featured__title::before {
    content: "생중계";
    background: #4caf50;
  }

  /* Auto-detect common Korean news terms in titles */
  .elementor-element .elementor-shortcode .kp-featured.bando .kp-featured__title a:is([href*="속보"], [title*="속보"])::before,
  .elementor-element .elementor-shortcode .kp-featured.bando h1.kp-featured__title a:is([href*="속보"], [title*="속보"])::before {
    content: "속보";
    display: inline-block;
    font-weight: 700;
    font-size: 0.8rem;
    padding: 0.2rem 0.5rem;
    margin-right: 0.5rem;
    border-radius: 3px;
    color: white;
    background: #ff5b5b;
    vertical-align: middle;
  }

  .elementor-element .elementor-shortcode .kp-featured.bando .kp-featured__title a:is([href*="단독"], [title*="단독"])::before,
  .elementor-element .elementor-shortcode .kp-featured.bando h1.kp-featured__title a:is([href*="단독"], [title*="단독"])::before {
    content: "단독";
    display: inline-block;
    font-weight: 700;
    font-size: 0.8rem;
    padding: 0.2rem 0.5rem;
    margin-right: 0.5rem;
    border-radius: 3px;
    color: white;
    background: #ff9800;
    vertical-align: middle;
  }

  /* === BANDO REGULAR ITEMS === */
  .elementor-element .elementor-shortcode .kp-regular-item.bando {
    border-left: 2px solid var(--e-global-color-secondary, #00B8B4) !important;
    padding-left: 0.75rem !important;
  }

  /* Image positioning variants */
  .elementor-element .elementor-shortcode .kp-regular-item.bando.image-right .kp-regular-item__content {
    flex-direction: row-reverse !important;
  }

  .elementor-element .elementor-shortcode .kp-regular-item.bando.image-top .kp-regular-item__content {
    flex-direction: column !important;
  }

  .elementor-element .elementor-shortcode .kp-regular-item.bando.image-top .kp-regular-item__image {
    flex: none !important;
    max-width: 100% !important;
    margin-bottom: 0.75rem !important;
  }

  .elementor-element .elementor-shortcode .kp-regular-item.bando.image-left .kp-regular-item__content {
    flex-direction: row !important;
  }

  .elementor-element .elementor-shortcode .kp-regular-item.bando.image-none .kp-regular-item__image {
    display: none !important;
  }

   /* Regular items with news badges */
  .elementor-element .elementor-shortcode .kp-regular-item.bando[data-breaking="true"] .kp-regular-item__title::before,
  .elementor-element .elementor-shortcode .kp-regular-item.bando[data-exclusive="true"] .kp-regular-item__title::before,
  .elementor-element .elementor-shortcode .kp-regular-item.bando[data-urgent="true"] .kp-regular-item__title::before,
  .elementor-element .elementor-shortcode .kp-regular-item.bando[data-live="true"] .kp-regular-item__title::before {
    display: inline-block;
    font-weight: 700;
    font-size: 0.7rem;
    padding: 0.15rem 0.4rem;
    margin-right: 0.4rem;
    border-radius: 2px;
    color: white;
    vertical-align: middle;
    text-transform: uppercase;
  }

  .elementor-element .elementor-shortcode .kp-regular-item.bando[data-breaking="true"] .kp-regular-item__title::before {
    content: "속보";
    background: #ff5b5b;
  }

  .elementor-element .elementor-shortcode .kp-regular-item.bando[data-exclusive="true"] .kp-regular-item__title::before {
    content: "단독";
    background: #ff9800;
  }

  .elementor-element .elementor-shortcode .kp-regular-item.bando[data-urgent="true"] .kp-regular-item__title::before {
    content: "긴급";
    background: #ff1744;
  }

  .elementor-element .elementor-shortcode .kp-regular-item.bando[data-live="true"] .kp-regular-item__title::before {
    content: "생중계";
    background: #4caf50;
  }

  /* Auto-detect in regular item titles and links */
  .elementor-element .elementor-shortcode .kp-regular-item.bando .kp-regular-item__title a:is([href*="속보"], [title*="속보"])::before {
    content: "속보";
    display: inline-block;
    font-weight: 700;
    font-size: 0.7rem;
    padding: 0.15rem 0.4rem;
    margin-right: 0.4rem;
    border-radius: 2px;
    color: white;
    background: #ff5b5b;
    vertical-align: middle;
  }

  .elementor-element .elementor-shortcode .kp-regular-item.bando .kp-regular-item__title a:is([href*="단독"], [title*="단독"])::before {
    content: "단독";
    display: inline-block;
    font-weight: 700;
    font-size: 0.7rem;
    padding: 0.15rem 0.4rem;
    margin-right: 0.4rem;
    border-radius: 2px;
    color: white;
    background: #ff9800;
    vertical-align: middle;
  }

  /* Auto-detect in title text content itself */
  .elementor-element .elementor-shortcode .kp-regular-item.bando .kp-regular-item__title:has(a[title*="속보"])::before,
  .elementor-element .elementor-shortcode .kp-regular-item.bando h2.kp-regular-item__title:has(a[title*="속보"])::before {
    content: "속보";
    display: inline-block;
    font-weight: 700;
    font-size: 0.7rem;
    padding: 0.15rem 0.4rem;
    margin-right: 0.4rem;
    border-radius: 2px;
    color: white;
    background: #ff5b5b;
    vertical-align: middle;
  }

  .elementor-element .elementor-shortcode .kp-regular-item.bando .kp-regular-item__title:has(a[title*="단독"])::before,
  .elementor-element .elementor-shortcode .kp-regular-item.bando h2.kp-regular-item__title:has(a[title*="단독"])::before {
    content: "단독";
    display: inline-block;
    font-weight: 700;
    font-size: 0.7rem;
    padding: 0.15rem 0.4rem;
    margin-right: 0.4rem;
    border-radius: 2px;
    color: white;
    background: #ff9800;
    vertical-align: middle;
  }

  /* === BANDO OPINION ITEMS === */
  .elementor-element .elementor-shortcode .kp-opinion-item.bando {
    border-left: 2px solid var(--e-global-color-accent, #FC9700) !important;
    padding-left: 0.75rem !important;
  }

  .elementor-element .elementor-shortcode .kp-opinion-item.bando .kp-opinion-item__type {
    background: var(--e-global-color-accent, #FC9700) !important;
    color: white !important;
    padding: 0.2rem 0.5rem !important;
    border-radius: 3px !important;
    font-size: 0.8rem !important;
  }
  
  /* Opinion items with news badges */
  .elementor-element .elementor-shortcode .kp-opinion-item.bando[data-breaking="true"] .kp-opinion-item__title::before,
  .elementor-element .elementor-shortcode .kp-opinion-item.bando[data-exclusive="true"] .kp-opinion-item__title::before,
  .elementor-element .elementor-shortcode .kp-opinion-item.bando[data-urgent="true"] .kp-opinion-item__title::before {
    display: inline-block;
    font-weight: 700;
    font-size: 0.7rem;
    padding: 0.15rem 0.4rem;
    margin-right: 0.4rem;
    border-radius: 2px;
    color: white;
    vertical-align: middle;
  }

  .elementor-element .elementor-shortcode .kp-opinion-item.bando[data-breaking="true"] .kp-opinion-item__title::before {
    content: "속보";
    background: #ff5b5b;
  }

  .elementor-element .elementor-shortcode .kp-opinion-item.bando[data-exclusive="true"] .kp-opinion-item__title::before {
    content: "단독";
    background: #ff9800;
  }

  .elementor-element .elementor-shortcode .kp-opinion-item.bando[data-urgent="true"] .kp-opinion-item__title::before {
    content: "긴급";
    background: #ff1744;
  }


  /* Opinion image positioning */
  .elementor-element .elementor-shortcode .kp-opinion-item.bando.image-right {
    display: flex !important;
    flex-direction: row-reverse !important;
    align-items: center !important;
    gap: 0.75rem !important;
  }

  .elementor-element .elementor-shortcode .kp-opinion-item.bando.image-right .kp-opinion-item__image {
    flex: 0 0 25% !important;
    max-width: 25% !important;
  }

  .elementor-element .elementor-shortcode .kp-opinion-item.bando.image-right .kp-opinion-item__content {
    flex: 1 !important;
  }

  /* === BANDO PROGRESSIVE POSTS === */
  .elementor-element .elementor-shortcode .kp-progressive-posts.bando {
    border-left: 4px solid var(--e-global-color-primary, #009FE4) !important;
  }

  .elementor-element .elementor-shortcode .kp-progressive-posts.bando a {
    position: relative !important;
  }

  .elementor-element .elementor-shortcode .kp-progressive-posts.bando a::before {
    content: "▶" !important;
    position: absolute !important;
    left: 0.75rem !important;
    color: var(--e-global-color-primary, #009FE4) !important;
    font-weight: 700 !important;
  }

  .elementor-element .elementor-shortcode .kp-progressive-posts.bando a {
    padding-left: 2.5rem !important;
  }

  /* === BANDO WEATHER WIDGET === */
  .elementor-element .elementor-shortcode .korean-weather-widget.bando {
    border: 2px solid var(--e-global-color-primary, #009FE4) !important;
    border-radius: 8px !important;
    background: linear-gradient(135deg, var(--e-global-color-b6ee983, #ffffff) 0%, var(--e-global-color-c6eb9e4, #F8F9FA) 100%) !important;
  }

  .elementor-shortcode .korean-weather-widget.bando .weather-icon {
    font-size: 1.5rem !important;
    text-shadow: 0 1px 3px rgba(0,0,0,0.1) !important;
  }

  .elementor-element .elementor-shortcode .korean-weather-widget.bando .weather-temp {
    font-size: 1.1rem !important;
    color: var(--e-global-color-primary, #009FE4) !important;
  }

  /* === BANDO STOCK TICKER === */
  .elementor-element .elementor-shortcode .kp-stock-slider-wrap.bando .kp-stock-bar {
    background: linear-gradient(90deg, var(--e-global-color-primary, #009FE4) 0%, #1a472a 20%, #2d5a3d 21%, #3f6e50 100%) !important;
    border: 2px solid var(--e-global-color-secondary, #00B8B4) !important;
    border-radius: 8px !important;
  }

  .elementor-element .elementor-shortcode .kp-stock-slider-wrap.bando .kp-stock-head {
    background: rgba(0, 0, 0, 0.2) !important;
    border-radius: 6px 0 0 6px !important;
  }

  .elementor-element .elementor-shortcode .kp-stock-slider-wrap.bando .kp-stock-head-title {
    text-shadow: 0 2px 4px rgba(0,0,0,0.3) !important;
    font-size: 1.4rem !important;
  }

  .elementor-element .elementor-shortcode .kp-stock-slider-wrap.bando .kp-stock-item {
    background: rgba(255, 255, 255, 0.1) !important;
    padding: 0.3rem 0.6rem !important;
    border-radius: 4px !important;
    margin: 0 0.2rem !important;
  }

  .elementor-element .elementor-shortcode .kp-stock-slider-wrap.bando .kp-stock-datetime-container {
    background: rgba(0, 0, 0, 0.3) !important;
    border-radius: 0 6px 6px 0 !important;
  }

  /* === RESPONSIVE BANDO MODIFICATIONS === */
  @media (max-width: 768px) {
    .elementor-element .elementor-shortcode .kp-featured.bando .kp-featured__content {
      flex-direction: column !important;
    }
    
    .elementor-element .elementor-shortcode .kp-featured.bando .kp-featured__text,
    .elementor-element .elementor-shortcode .kp-featured.bando .kp-featured__image {
      flex: 1 1 100% !important;
      max-width: 100% !important;
      order: unset !important;
    }
    
    .elementor-element .elementor-shortcode .kp-featured.bando .kp-featured__image {
      order: -1 !important;
    }

    .elementor-element .elementor-shortcode .kp-regular-item.bando.image-right .kp-regular-item__content,
    .elementor-element .elementor-shortcode .kp-regular-item.bando.image-left .kp-regular-item__content {
      flex-direction: column !important;
    }

    .elementor-element .elementor-shortcode .kp-regular-item.bando .kp-regular-item__image {
      flex: none !important;
      max-width: 100% !important;
      margin-bottom: 0.5rem !important;
    }

    .elementor-element .elementor-shortcode .kp-opinion-item.bando.image-right {
      flex-direction: column !important;
    }

    .elementor-element .elementor-shortcode .kp-opinion-item.bando.image-right .kp-opinion-item__image {
      flex: none !important;
      max-width: 100% !important;
      margin-bottom: 0.5rem !important;
    }
  }

  /* === BANDO DARK MODE === */
  body.dark .elementor-element .elementor-shortcode .kp-featured.bando {
    border-left-color: var(--e-global-color-primary, #009FE4) !important;
  }

  body.dark .elementor-element .elementor-shortcode .kp-regular-item.bando {
    border-left-color: var(--e-global-color-secondary, #00B8B4) !important;
  }

  body.dark .elementor-element .elementor-shortcode .kp-opinion-item.bando {
    border-left-color: var(--e-global-color-accent, #FC9700) !important;
  }

  body.dark .elementor-element .elementor-shortcode .kp-progressive-posts.bando {
    border-left-color: var(--e-global-color-primary, #009FE4) !important;
  }

  body.dark .elementor-element .elementor-shortcode .korean-weather-widget.bando {
    background: linear-gradient(135deg, var(--e-global-color-background, #222222) 0%, var(--e-global-color-2104387, #2D3748) 100%) !important;
    border-color: var(--e-global-color-primary, #009FE4) !important;
  }

  body.dark .elementor-element .elementor-shortcode .kp-stock-slider-wrap.bando .kp-stock-bar {
    background: linear-gradient(90deg, var(--e-global-color-primary, #009FE4) 0%, #0f261a 20%, #1a3a2d 21%, #254d40 100%) !important;
    border-color: var(--e-global-color-secondary, #00B8B4) !important;
  }
  
  /* ==============================
     Fallback: Hello/Elementor default search markup
     Ensure decent styling even if template override is bypassed
     ============================== */
  body.search.search-results .site-main .page-header .entry-title {
    font-family: var(--e-global-typography-text-font-family, "Noto Sans KR"), Sans-serif !important;
    font-size: 1.5rem !important;
    line-height: 2rem !important;
    font-weight: 700 !important;
    letter-spacing: -0.05em !important;
    margin: 0 0 1rem 0 !important;
    color: var(--e-global-color-text, #111111) !important;
  }
  body.search.search-results .site-main .page-content {
    display: grid !important;
    gap: 0.75rem !important;
  }
  body.search.search-results .site-main .post {
    display: grid !important;
    grid-template-columns: 20% 1fr !important;
    gap: 0.75rem !important;
    background: var(--e-global-color-b6ee983, #ffffff) !important;
    border-bottom: 1px solid var(--e-global-color-c6eb9e4, #F0F0F0) !important;
    padding: 0.75rem !important;
  }
  body.search.search-results .site-main .post:last-child { border-bottom: none !important; }
  body.search.search-results .site-main .post > a:first-of-type { grid-column: 1 !important; grid-row: 1 / span 3 !important; display: block !important; }
  body.search.search-results .site-main .post > a:first-of-type img { width: 100% !important; height: auto !important; object-fit: cover !important; display: block !important; }
  body.search.search-results .site-main .post > h2.entry-title { grid-column: 2 !important; margin: 0 !important; font-size: 1.3rem !important; line-height: 1.4 !important; letter-spacing: -0.05em !important; }
  body.search.search-results .site-main .post > h2.entry-title a { color: var(--e-global-color-text, #111111) !important; text-decoration: none !important; }
  body.search.search-results .site-main .post > h2.entry-title a:hover { color: var(--e-global-color-primary, #111111) !important; }
  /* High specificity to beat theme styles for entry-title */
  html body.search.search-results .site-main h2.entry-title,
  html body.search.search-results .site-main h2.entry-title a {
    font-size: 1.3rem !important;
    line-height: 1.4 !important;
    font-weight: 600 !important;
    letter-spacing: -0.05em !important;
    color: var(--e-global-color-text, #111111) !important;
  }
  html body.search.search-results .site-main h2.entry-title a:hover {
    color: var(--e-global-color-primary, #111111) !important;
  }
  body.search.search-results .site-main .post > p { grid-column: 2 !important; margin: 0 !important; font-size: 0.9rem !important; line-height: 1.5 !important; color: var(--e-global-color-text, #111111) !important; }
  
  /* Mobile stack */
  @media (max-width: 768px) {
    body.search.search-results .site-main .post { grid-template-columns: 1fr !important; }
    body.search.search-results .site-main .post > a:first-of-type { grid-row: auto !important; }
  }
  
  /* Dark mode fallback */
  body.dark.search.search-results .site-main .page-header .entry-title { color: var(--e-global-color-text, #fafafa) !important; }
  body.dark.search.search-results .site-main .post { background: var(--e-global-color-background, #222222) !important; border-bottom-color: var(--e-global-color-divider, #444) !important; }
  body.dark.search.search-results .site-main .post > h2.entry-title a { color: var(--e-global-color-text, #fafafa) !important; }
  body.dark.search.search-results .site-main .post > h2.entry-title a:hover { color: var(--e-global-color-primary, #009FE4) !important; }
  body.dark.search.search-results .site-main .post > p { color: var(--e-global-color-text, #fafafa) !important; }
  
  /* ================================
   KOREAN PATCH CONNECT ACCOUNT BUTTON
 
   ================================ */

   .connect-account-button, .connect-account-button .elementor-button {
    /* Core Button Styling */
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    padding: 12px 16px !important;
    min-height: 44px !important;
    border-radius: 8px !important;
    font-family: "Neodgm Pro", sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
    text-transform: lowercase !important;
    white-space: nowrap !important;
    background-color: #ffffff !important;
    color: #1a1a1a !important;
    border: 1px solid #000 !important;
    box-shadow: 4px 4px 0 #0a1a1a !important;
    
    /* Smooth Transitions */
    transition: all 0.15s cubic-bezier(0.4, 0, 0.2, 1) !important;
    
    /* Prevent text selection */
    user-select: none !important;
    -webkit-user-select: none !important;
    -moz-user-select: none !important;
    
    /* Ensure proper positioning */
    position: relative !important;
    z-index: 1 !important;
}

/* Hover State */
.connect-account-button:hover {
    /* Slight lift effect */
    transform: translateY(-2px) !important;
    box-shadow: 4px 4px 0 #0a1a1a !important;
    
    /* Subtle background change */
    background-color: #f8f9fa !important;
    border: 1px solid #000 !important;
    color: #1a1a1a !important;
    border-color: #000 !important;
}

/* Active/Pressed State */
.connect-account-button:active {
    /* Press down effect */
    transform: translateY(2px) !important;
    box-shadow: 4px 4px 0 #0a1a1a !important;
    
    background-color: #f1f3f4 !important;
    transition: all 0.05s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

/* Focus State for Accessibility */
.connect-account-button:focus {
    outline: 2px solid #F87614 !important;
    outline-offset: 2px !important;
}

/* Korean Patch SVG Logo Icon - Now handled in HTML */
.connect-account-button .kp-logo-icon {
    width: 22px !important;
    height: 22px !important;
    display: inline-block !important;
    vertical-align: middle !important;
    flex-shrink: 0 !important;
    margin: -1px !important;
}

/* Dark Mode Support - Keep white background */
body.dark .connect-account-button,
[data-theme="dark"] .connect-account-button,
.dark .connect-account-button {
    /* Maintain white background in dark mode for contrast */
    background-color: #ffffff !important;
    color: #1a1a1a !important;
    border-color: #000 !important;
    border: 1px solid #000 !important;
    
    /* Keep the same hard drop shadow */
    box-shadow: 4px 4px 0 #0a1a1a !important;
}

body.dark .connect-account-button:hover,
[data-theme="dark"] .connect-account-button:hover,
.dark .connect-account-button:hover {
    background-color: #00C49A !important;
    color: #1a1a1a !important;
    border-color: #00C49A !important;
    box-shadow: 4px 4px 0 #0a1a1a !important;
}   

body.dark .connect-account-button:active,
[data-theme="dark"] .connect-account-button:active,
.dark .connect-account-button:active {
    background-color: #f1f3f4 !important;
    box-shadow: 4px 4px 0 #0a1a1a !important;
}

/* Small/Compact Variant */
.connect-account-button.compact {
    padding: 8px 12px !important;
    min-height: 36px !important;
    font-size: 13px !important;
    border-radius: 6px !important;
}

.connect-account-button.compact .kp-logo-icon {
    width: 14px !important;
    height: 14px !important;
    margin: 0 3px !important;
}

/* Large Variant */
.connect-account-button.large {
    padding: 16px 24px !important;
    min-height: 52px !important;
    font-size: 16px !important;
    border-radius: 10px !important;
}

.connect-account-button.large .kp-logo-icon {
    width: 18px !important;
    height: 18px !important;
    margin: 0 6px !important;
}

/* Floating Widget Specific Styles */
.elementor-widget-shortcode .connect-account-button {
    width: 100% !important;
}

/* Mobile Responsiveness */
@media (max-width: 768px) {
    .connect-account-button {
        font-size: 13px !important;
        padding: 10px 14px !important;
        min-height: 40px !important;
    }
    
    .connect-account-button .kp-logo-icon {
        width: 15px !important;
        height: 15px !important;
    }
}

/* Extra Small Mobile */
@media (max-width: 480px) {
    .connect-account-button {
        font-size: 12px !important;
        padding: 8px 12px !important;
        min-height: 36px !important;
        border-radius: 6px !important;
    }
    
    .connect-account-button .kp-logo-icon {
        width: 14px !important;
        height: 14px !important;
        margin: 0 3px !important;
    }
}

/* Prevent conflicts with theme styles */
.connect-account-button.elementor-button {
    /* Override any Elementor button styles */
    background-image: none !important;
    text-shadow: none !important;
    background: var(-rove--rover-white #FFFFFF) !important;
}

/* High contrast mode support */
@media (prefers-contrast: high) {
    .connect-account-button {
        border-width: 2px !important;
        border-color: #000000 !important;
    }
}

/* ================================
   CONNECT ACCOUNT EXPANDABLE BUTTON
   ================================ */

/* Wrapper for the expandable button */
.connect-account-wrapper {
    display: inline-block !important;
    position: relative !important;
}

/* Hidden link for navigation */
.connect-hidden-link {
    position: absolute !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

/* Expandable button container */
.connect-expandable-button {
    /* Base button styling */
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    position: relative !important;
    overflow: hidden !important;
    
    /* Start as square */
    width: 44px !important;
    height: 44px !important;
    min-height: 44px !important;
    padding: 10px !important;
    border-radius: 8px !important;
    
    /* Styling */
    background-color: #ffffff !important;
    color: #1a1a1a !important;
    border: 1px solid #000 !important;
    box-shadow: 4px 4px 0 #0a1a1a !important;
    
    /* Smooth transitions for expansion - delayed for exit animation */
    transition: width 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0.2s, 
                padding 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0.2s !important;
    
    /* Cursor and selection */
    cursor: pointer !important;
    user-select: none !important;
    -webkit-user-select: none !important;
    -moz-user-select: none !important;
    
    /* Font styling */
    font-family: "Neodgm Pro", sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
    text-transform: lowercase !important;
    white-space: nowrap !important;
}

/* Content container for proper centering */
.connect-expandable-button .button-content {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    flex: 1 !important;
    position: relative !important;
    min-width: 20px !important; /* Allow flex shrinking */
}

/* In collapsed state, only show the icon */
.connect-expandable-button:not(.expanded) .button-content {
    gap: 0 !important;
}

/* Button icon (always visible, stays centered) */
.connect-expandable-button .button-icon {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
    z-index: 2 !important;
}

.connect-expandable-button .button-icon .kp-logo-icon {
    width: 22px !important;
    height: 22px !important;
    margin: 0 !important;
}

/* Left text (hidden initially) */
.connect-expandable-button .button-text-left {
    opacity: 0 !important;
    transform: translateY(15px) !important;
    transition: opacity 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0.2s,
                transform 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0.2s !important;
    flex-shrink: 0 !important;
    width: 0 !important; /* Take no space when collapsed */
    overflow: hidden !important;
}

/* Right text (hidden initially) */
.connect-expandable-button .button-text-right {
    opacity: 0 !important;
    transform: translateY(15px) !important;
    transition: opacity 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0.25s,
                transform 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0.25s !important;
    flex-shrink: 0 !important;
    width: 0 !important; /* Take no space when collapsed */
    overflow: hidden !important;
}

/* Close button (hidden initially) */
.connect-expandable-button .button-close {
    opacity: 0 !important;
    transform: translateY(15px) scale(0.8) !important;
    transition: opacity 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0.3s,
                transform 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0.3s !important;
    
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    
    width: 24px !important;
    height: 24px !important;
    border-radius: 4px !important;
    
    background-color: rgba(102, 102, 102, 0.1) !important;
    color: #666666 !important;
    font-size: 16px !important;
    font-weight: bold !important;
    line-height: 1 !important;
    
    flex-shrink: 0 !important;
    z-index: 3 !important;
    cursor: pointer !important;
}

/* Expanded state */
.connect-expandable-button.expanded {
    width: 200px !important;
    padding: 12px 16px !important;
    /* Remove transition delay for expanding */
    transition: width 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94), 
                padding 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94) !important;
}

.connect-expandable-button.expanded .button-text-left {
    opacity: 1 !important;
    transform: translateY(0) !important;
    width: auto !important; /* Allow natural width when expanded */
}

.connect-expandable-button.expanded .button-text-right {
    opacity: 1 !important;
    transform: translateY(0) !important;
    width: auto !important; /* Allow natural width when expanded */
}

.connect-expandable-button.expanded .button-close {
    opacity: 1 !important;
    transform: translateY(0) scale(1) !important;
}

/* Collapsing state - fast exit animations */
.connect-expandable-button.collapsing .button-text-left,
.connect-expandable-button.collapsing .button-text-right {
    opacity: 0 !important;
    transform: translateY(15px) !important;
    transition: opacity 0.15s cubic-bezier(0.25, 0.46, 0.45, 0.94),
                transform 0.15s cubic-bezier(0.25, 0.46, 0.45, 0.94) !important;
}

.connect-expandable-button.collapsing .button-close {
    opacity: 0 !important;
    transform: translateY(15px) scale(0.8) !important;
    transition: opacity 0.15s cubic-bezier(0.25, 0.46, 0.45, 0.94),
                transform 0.15s cubic-bezier(0.25, 0.46, 0.45, 0.94) !important;
}

/* Hover states */
.connect-expandable-button:hover {
    transform: translateY(-2px) !important;
    box-shadow: 4px 4px 0 #0a1a1a !important;
    background-color: #f8f9fa !important;
}

.connect-expandable-button:active {
    transform: translateY(2px) !important;
    box-shadow: 4px 4px 0 #0a1a1a !important;
    background-color: #f1f3f4 !important;
}

.connect-expandable-button .button-close:hover {
    background-color: rgba(102, 102, 102, 0.2) !important;
    color: #333333 !important;
}

/* Dark mode support */
body.dark .connect-expandable-button,
[data-theme="dark"] .connect-expandable-button,
.dark .connect-expandable-button {
    background-color: #ffffff !important;
    color: #1a1a1a !important;
    border-color: #000 !important;
    box-shadow: 4px 4px 0 #0a1a1a !important;
}

body.dark .connect-expandable-button:hover,
[data-theme="dark"] .connect-expandable-button:hover,
.dark .connect-expandable-button:hover {
    background-color: #00C49A !important;
    color: #1a1a1a !important;
    border-color: #00C49A !important;
}

body.dark .connect-expandable-button .button-close,
[data-theme="dark"] .connect-expandable-button .button-close,
.dark .connect-expandable-button .button-close {
    background-color: rgba(255, 255, 255, 0.1) !important;
    color: #cccccc !important;
}

body.dark .connect-expandable-button .button-close:hover,
[data-theme="dark"] .connect-expandable-button .button-close:hover,
.dark .connect-expandable-button .button-close:hover {
    background-color: rgba(255, 255, 255, 0.2) !important;
    color: #ffffff !important;
}

/* Mobile responsiveness */
@media (max-width: 768px) {
    .connect-expandable-button {
        width: 40px !important;
        height: 40px !important;
        min-height: 40px !important;
        padding: 8px !important;
    }
    
    .connect-expandable-button .button-icon .kp-logo-icon {
        width: 18px !important;
        height: 18px !important;
    }
    
    .connect-expandable-button.expanded {
        width: 170px !important;
        padding: 10px 14px !important;
    }
    
    .connect-expandable-button .button-content {
        gap: 6px !important;
    }
    
    .connect-expandable-button .button-close {
        width: 20px !important;
        height: 20px !important;
        font-size: 14px !important;
    }
}

@media (max-width: 480px) {
    .connect-expandable-button {
        width: 36px !important;
        height: 36px !important;
        min-height: 36px !important;
        padding: 6px !important;
        border-radius: 6px !important;
    }
    
    .connect-expandable-button .button-icon .kp-logo-icon {
        width: 16px !important;
        height: 16px !important;
    }
    
    .connect-expandable-button.expanded {
        width: 150px !important;
        padding: 8px 12px !important;
    }
    
    .connect-expandable-button .button-content {
        gap: 5px !important;
    }
    
    .connect-expandable-button .button-close {
        width: 18px !important;
        height: 18px !important;
        font-size: 12px !important;
    }
}

/* Dark Mode Toggle Component */
.kp-dark-mode-toggle {
    color: #FFF;
    transition: all 0.2s ease;
}

.kp-dark-mode-toggle:hover {
    background-color: rgba(244, 246, 248, 0.4) !important;
    color: #FFF;
}

body.dark .kp-dark-mode-toggle {
    color: var(--rover-text-primary-dark, #FFF);
}

body.dark .kp-dark-mode-toggle:hover {
    background-color: rgba(244, 246, 248, 0.4) !important;
    color: var(--rover-text-primary-dark, #FFF);
}

/* Ensure SVG icons inherit color */
.kp-dark-mode-toggle .moon-icon svg,
.kp-dark-mode-toggle .sun-icon svg {
    color: inherit;
}