/* 핵심 팝업 흰색 배경 */
.core_popup {
  background: transparent !important;
}

.core_popup .dim {
  background: rgba(255, 255, 255, 0) !important;
}

/* 핵심 팝업 높이 실제 축소 */
.layer_wrap.modal_bottom.bottom_v2.core_popup .pop_con {
  height: 68vh !important;
  max-height: 65vh !important;
  overflow: hidden !important;
  background: #FFFFFF !important;
  box-shadow: 0px -5px 15px 0px rgba(0, 0, 0, 0.08) !important;
  border-top-left-radius: 20px;
  border-top-right-radius: 20px;
}

.layer_wrap.modal_bottom.bottom_v2.core_popup .con_box {
  height: calc(68vh - 24px) !important;
  max-height: calc(68vh - 24px) !important;
  overflow-y: auto !important;
  box-sizing: border-box;
  padding-bottom: 20px;
}

.core_popup .tit_wrap {
  margin-bottom: 12px;
}

.core_popup .gray_box {
  padding: 14px 16px;
  margin-top: 10px;
  background: #F7F8FA !important;
}

.core_popup .stock_row {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

.core_popup .stock_rate.txt_red {
  color: #F4124F !important;
}

.core_popup .stock_rate.txt_blue {
  color: #3182F7 !important;
}

.core_popup .gray_box .desc {
  line-height: 140%;
  letter-spacing: -0.5px;
  white-space: normal !important;
  word-break: break-word;
  overflow-wrap: anywhere;
  overflow-x: hidden;
}

.core_popup .gray_box .desc * {
  max-width: 100%;
  box-sizing: border-box;
}

.core_popup .gray_box .desc img,
.core_popup .gray_box .desc iframe,
.core_popup .gray_box .desc video {
  max-width: 100% !important;
  height: auto !important;
}

.core_popup .gray_box .desc table {
  display: block;
  max-width: 100% !important;
  overflow-x: auto;
}

.core_popup .gray_box .desc p,
.core_popup .gray_box .desc div,
.core_popup .gray_box .desc span {
  white-space: normal !important;
  word-break: break-word;
  overflow-wrap: anywhere;
}

/* 시황/팝업 본문 줄바꿈 및 넘침 방지 */
.core_popup .gray_box .desc {
  line-height: 140%;
  letter-spacing: -0.5px;
  white-space: normal !important;
  word-break: break-word;
  overflow-wrap: anywhere;
  overflow-x: hidden;
}

.core_popup .gray_box .desc * {
  max-width: 100%;
  box-sizing: border-box;
}

.core_popup .gray_box .desc img,
.core_popup .gray_box .desc iframe,
.core_popup .gray_box .desc video {
  max-width: 100% !important;
  height: auto !important;
}

.core_popup .gray_box .desc table {
  display: block;
  max-width: 100% !important;
  overflow-x: auto;
}

.core_popup .gray_box .desc p,
.core_popup .gray_box .desc div,
.core_popup .gray_box .desc span {
  white-space: normal !important;
  word-break: break-word;
  overflow-wrap: anywhere;
}

/* 클립 */
.contents.clip video {position:absolute;top: 0px;left: 0px;width:100%;height:100%;object-position:center;}
.layer_activated .contents.clip .module_section_info{z-index:2}
.pagination-wrap .back2{width: 24px; height: 24px; background:url(../images/common/btn_back.png) no-repeat 0 / 24px; background-size: 24px 24px;}
.contents.clip{padding:0;overflow:hidden;height:100dvh;background:#010101}
.contents.clip.scrap{padding:90px 20px;height: 100%;overflow-y: auto;-webkit-overflow-scrolling: touch;}
.contents.clip.list_search{overflow-y: auto;-webkit-overflow-scrolling: touch;}
.container.layout_flex .contents.clip{padding:0}
#carousel .panel{position: relative;width:100%;height:100%;background: #000;}
#carousel .panel .panel-media{background-size: cover;background-position: top;}

.contents.clip.list_search{padding: 20px;}

.wrap.swiper-ver .header{background-color: #010101;}
.wrap.swiper-ver .header .tit{color: #fff;}
.wrap.swiper-ver .back2{width: 24px; height: 24px; background:url(../images/common/btn_back.png) no-repeat 0 / 24px; background-size: 24px 24px;}

.search_wrap{position:relative;}
.search_wrap label{display:block;position:relative;}
.search_wrap label .btn_inp_del{display:none;position:absolute;right:45px;top:50%;width:20px;height:20px;margin-top:-10px;background:url(../images/common/btn_delete.png)no-repeat 0 / 20px;color:transparent;}
.search_wrap label input{font-family:'Malgun Gothic','sans-serif'; width:100%;height:60px;padding:20px 70px 20px 20px;border:1px solid #212121;border-radius:4px;background:#121212;font-size:16px;color:#fff;line-height:18px;}
.search_wrap label input::placeholder{color:#666 !important;}
.search_wrap button{position:absolute;right:15px;top:50%;width:24px;height:24px;margin-top:-12px;background:url(../images/common/icon_search_white.png)no-repeat 0 / 24px;color:transparent;}

/*
@media (min-aspect-ratio: 0.50) {
	#carousel .panel .panel-media {
		background-size: cover;
		background-position: top;
	}
	.contents.clip video {
		object-fit: cover;
		object-position: top;
	}
}

@supports not (overflow: clip){
    #carousel .panel .panel-media > video{ overflow:hidden; }
}*/


/* 클립 강의 */
.clip .pagination-wrap{position: absolute;left: 0;top: 0;display: flex;align-items: center;justify-content: space-between;z-index: 20;width: 100%;padding: 8px 16px;}
.clip .pagination-wrap .control-area{display: flex;align-items: center;gap: 8px;}
.clip .pagination-wrap .control-area button{display: inline-block;width: 24px;height: 24px;}
.clip .pagination-wrap .control-area .btn_volume{background: url(../images/clip/ico_volume_off.png) no-repeat 0 0 / 24px;}
.clip .pagination-wrap .control-area .btn_volume.on{background: url(../images/clip/ico_volume.png) no-repeat 0 0 / 24px;}
.clip .pagination-wrap .control-area .btn_search{background: url(../images/clip/ico_search.png) no-repeat 0 0 / 24px;}
.clip .swiper-pagination{position: static;display: flex;gap: 8px;}
.clip .swiper-pagination-clickable .swiper-pagination-bullet{opacity: 1; width: auto; height: auto; padding: 10px 12px;font-size: 14px;font-weight: 500;border-radius: 100px; color:#FFFFFF ; background: rgba(255, 255, 255, 0.2)}
.clip .swiper-pagination-bullet-active{border-radius: 36px;background: #FFF !important;font-weight: 700 !important;color: #000 !important;}
.clip .swiper-pagination-clickable.change .swiper-pagination-bullet{opacity: 1; width: auto; height: auto; padding: 10px 12px;font-size: 14px;font-weight: 500;border-radius: 500px; color:#68707D ; background: #EEF0F5;}
.clip .swiper-pagination-clickable.change .swiper-pagination-bullet-active{border: 1px solid #68707D;background-color: #fff;backdrop-filter: blur(24px);font-weight: 700;color: #292D34;}
.clip .swiper-slide .lecture_new .top_bann{padding-top: 72px;}
.clip .swiper-slide .contents.clip .clip_video_list ul{margin-top: 0;}
.clip .swiper-slide .contents.clip .clip_video_list.pd_custom{padding: 56px 16px 100px;}
.clip .wrap.swiper-ver{background-color: #010101;}
.clip .wrap.swiper-ver .container{background-color: #010101;}

.vote_section .top_ul li .gage_wrap .thumb{
    width: 32px;
    height: 32px;
    margin-right: 8px;
    border-radius: 50%;
    overflow: hidden;
    flex-shrink: 0;
}

.vote_section .top_ul li .gage_wrap .thumb img{
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    border-radius: 50%;
}

.progress_bar.large .bar_conts{
    display:flex;
    width:100%;
    overflow:hidden;
    border-radius:8px;
}

.progress_bar.large .bar{
    min-width: 44px;
    display:flex;
    align-items:center;
    justify-content:center;
    position:relative;
    white-space:nowrap;
}

.progress_bar.large .bar .value{
    position:relative;
    z-index:2;
    font-size:12px;
    font-weight:700;
    color:#fff;
}

#popupRate.up { color: #F4124F; }
#popupRate.down { color: #3182F7; }
#popupRate.zero { color: #7F8A9A; }

#popupStockLogo.cop_logo {
    display: inline-block;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background-color: #f2f4f7;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.echart_wrap { position: relative; }
.progress_bar.large { position: relative; z-index: 1; }
#echartScatter { position: relative; z-index: 2; }

/* 히트맵 팝업 텍스트/디자인 보정 */
#pop_name1 .pop_con{
    border-radius: 20px 20px 0 0;
    box-shadow: 0px -5px 15px 0px rgba(0, 0, 0, 0.08);
}

#pop_name1 .logo_tit_box{
    padding: 4px 0 0;
}

#pop_name1 .cop_area{
    display:flex;
    align-items:center;
    gap:10px;
}

#pop_name1 .cop_name{
    font-size: 20px;
    line-height: 28px;
    font-weight: 700;
    color:#111;
    letter-spacing:-0.5px;
}

#pop_name1 .gray_box.type2{
    background:#F7F8FA;
    border-radius:16px;
}

#pop_name1 .stock_info_area dl{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
}

#pop_name1 .stock_info_area dt{
    font-size:14px;
    line-height:20px;
    color:#7F8A9A;
    letter-spacing:-0.4px;
}

#pop_name1 .stock_info_area dd{
    font-size:15px;
    line-height:22px;
    font-weight:700;
    color:#111;
    text-align:right;
    letter-spacing:-0.4px;
}

#pop_name1 #popupRate.percent{
    font-size:15px;
    line-height:22px;
    font-weight:700;
}

#pop_name1 .btn_primary{
    border-radius:12px;
    font-weight:700;
}

/* 알고리즘 순위 슬라이드 배경 css */
.cop_logo {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    overflow: hidden;
    border-radius: 50%;
}

.cop_logo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* 알고리즘 순위 cp링크 추가 -> 수익률 중앙 */
.top_logo,
.top_txt,
.cop_area {
    text-decoration: none;
    color: inherit;
}

.top_txt {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.cop_area {
    display: flex;
    align-items: center;
}

/* 내 관심종목에서 비로그인일 경우 selec list 안 나오게 하기*/
.select_box.mini_sel.no_arrow::after {
    display: none !important;
}

.select_box.mini_sel.no_arrow select {
    pointer-events: none;
    background: transparent;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    padding-right: 12px;
}

.cp_link_fallback {
    display: flex;
    align-items: center;
    text-decoration: none;
    color: inherit;
}

/* 투자정보 */
.invest_type2 .key_content .swiper-container li button::before{
    content:'';
    display:block;
    position:absolute;
    top:5px;
    left:50%;
    width:48px;
    height:48px;
    transform:translateX(-50%);
    background: var(--cp-icon) no-repeat center center / cover;
    border-radius:50%;
}
.invest_type2 .key_content .swiper-container li .btn_core_popup{
    display:block;
    position:relative;
    width:100%;
    padding-top:74px;
    font-weight:500;
    font-size:14px;
    line-height:140%;
    letter-spacing:-0.5px;
    text-align:center;
    box-sizing:border-box;
}

.invest_type2 .key_content .swiper-container li .btn_core_popup::before{
    content:'';
    display:block;
    position:absolute;
    top:5px;
    left:50%;
    width:60px;
    height:60px;
    transform:translateX(-50%);
    background: var(--cp-icon) no-repeat center center / cover;
    border-radius:50%;
}

/* ai - 수익 도미넌스 */
.table_wrap.none_bd tbody a.bullet,
.table_wrap.none_bd tbody a.bullet:visited,
.table_wrap.none_bd tbody a.bullet:active {
    color: inherit;
    text-decoration: none;
    font-weight: 600;
}

.table_wrap.none_bd tbody a.bullet:hover {
    text-decoration: none;
}

/* 투자 정보 - 유레카 100 툴팁 */
.tit_area.tooltip_txt {
    display: flex;
    align-items: center;
    gap: 6px;
}

.tit_area.tooltip_txt .cont_tit {
    margin: 0;
}

.tit_area.tooltip_txt .btn_tooltip {
    flex: 0 0 auto;
}

/* 수익 도미넌스 cp 명 앞에 점 */
.dominance-bullet::before {
    background-color: var(--dominance-bullet-color, #000000) !important;
}

/* 수익 도미넌스 서비스 자세히보기*/
.gray_box.best .btn_link{
    display:flex;
    align-items:center;
    justify-content:flex-start;
    margin:12px 0 0 60px;
    font-size:13px;
}
.gray_box.best .btn_link::after{
    margin-left:2px;
}

.white_slide .stock_rank li + li {
    margin-top: 20px;
}

/* 게시글 태그 종목 로고 */
.item_name_list .logo {
    display: inline-block;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

/* AI 알고리즘 추천 탭 - 누적구독자순 한 줄 처리 */
.ror .ai_recommend_tab .subscriber_tab a {
    white-space: nowrap;
    padding-left: 12px;
    padding-right: 12px;
}

/* 투자정보 상세 게시글 - cp사 로고, 이름 링크*/
.contents.invest_type2 .info_box dl .logo_wrap {
    display: flex;
    align-items: center;
    gap: 12px;
    flex: 1;
    text-decoration: none;
    color: inherit;
}

.contents.invest_type2 .info_box dl .logo_wrap img {
    width: 48px;
    flex-shrink: 0;
}

.contents.invest_type2 .info_box dl .logo_wrap .name_item {
    display: flex;
    flex-direction: column;
    gap: 6px;
    min-width: 0;
}

.contents.invest_type2 .info_box dl .logo_wrap .name_item .cp_name {
    font-weight: 700;
    font-size: 18px;
    line-height: 125%;
    letter-spacing: -0.75px;
    color: inherit;
}

.contents.invest_type2 .info_box dl .logo_wrap .name_item .desc_item {
    margin: 0;
    color: inherit;
}

/* 특집기획 sub 분기 */
.special_edition .special-tab-panel {
    display: none !important;
}

.special_edition .special-tab-panel.active {
    display: block !important;
}

/* 타이머 꿀렁임 방지*/
.event_countdown {
    display: flex;
    align-items: center;
    justify-content: center;
}

.event_countdown .countdown_item {
    flex: 0 0 auto;
    text-align: center;
}

.event_countdown .countdown_item .value {
    display: inline-block;
    min-width: 2ch;
    text-align: center;

    font-variant-numeric: tabular-nums;
    font-feature-settings: "tnum";
}

/*bar 그래프 수익률 음수일 경우 파란색*/
.vote_section .top_ul.has_bar .percent.down {
    color: #3182F7;
}

/*종목당 평균 수익률, 종목당 최고수익률 음수일 경우 파란색*/
.white_slide .swiper-slide .top_txt .percent.down,
.white_slide .swiper-slide .stock_rank .number_area .percent.down {
    color: #3182F7;
}

/* 특집기획 부제 없을 경우 특집기획만 보이기, 가운데 정렬*/
.special_edition .tab_wrap {
    display: flex;
    justify-content: center;
}

.special_edition .tab_wrap li {
    flex: 1;
    text-align: center;
}

.special_edition .tab_wrap li:only-child {
    flex: 0 0 100%;
}

.special_edition .tab_wrap li a {
    display: block;
    text-align: center;
}

/*특집기획 이미지 크기*/
.special_edition .news_card_list .news_card .img_box {
    width: 100%;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    background-color: #f5f6f8;
}

.special_edition .news_card_list .news_card .img_box img {
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    object-fit: cover !important;
    object-position: center center;
    display: block;
}

.theme_insight_hidden {
    display: none !important;
}

/*기업정보 줄바꿈*/
.company_info {
    margin-top: 6px;
    font-size: 13px;
    line-height: 1.5;
    color: #666;
    white-space: pre-line;
}

/* 투자정보 상세 유료글 모자이크 */
.cp_wrap.invest_detail_lock .mas_history_wrap {
    position: relative;
}

/* locked일 때만 본문 일부만 노출 */
.cp_wrap.invest_detail_lock.locked .text_wrap {
    max-height: 520px;
    overflow: hidden;
}

/* locked일 때만 모자이크 아래 절반 */
.cp_wrap.invest_detail_lock.locked .mosaic {
    top: auto;
    bottom: 0;
    height: 50%;
    min-height: 220px;
}