/* RankLab STEP 11-3 - 내부 페이지 모바일 최적화 */

/* =========================
   공통 상세/리스트
========================= */
@media (max-width: 767px){

    .rl-stock-page,
    .rl-tv,
    .rl91,
    .rl91v,
    .rl93,
    .rl101,
    .rl84,
    .rl81,
    .rl81v{
        padding-left:14px !important;
        padding-right:14px !important;
        box-sizing:border-box !important;
    }

    .rl-detail-hero,
    .rl-tv-hero,
    .rl91v-hero,
    .rl93-hero,
    .rl81v-card{
        padding:18px !important;
        border-radius:14px !important;
    }

    .rl-panel-head,
    .rl-card-head,
    .rl93-panel-head,
    .rl81-head{
        display:flex !important;
        flex-direction:column !important;
        align-items:flex-start !important;
        gap:7px !important;
    }

    .rl-panel-head h2,
    .rl-card-head h2,
    .rl93-panel-head h2{
        font-size:18px !important;
        line-height:1.35 !important;
    }

    .rl-panel-head > a,
    .rl-card-head > a,
    .rl93-panel-head > a{
        font-size:12px !important;
    }

    /* 탭/정렬 버튼은 가로스크롤 */
    .rl-detail-tabs,
    .rl-report-tabs,
    .rl-sort,
    .rl101-tabs{
        display:flex !important;
        flex-wrap:nowrap !important;
        overflow-x:auto !important;
        -webkit-overflow-scrolling:touch;
        gap:6px !important;
        padding-bottom:4px !important;
        scrollbar-width:none;
    }

    .rl-detail-tabs::-webkit-scrollbar,
    .rl-report-tabs::-webkit-scrollbar,
    .rl-sort::-webkit-scrollbar,
    .rl101-tabs::-webkit-scrollbar{
        display:none;
    }

    .rl-detail-tabs a,
    .rl-report-tabs a,
    .rl-sort a,
    .rl101-tabs a{
        flex:0 0 auto !important;
        white-space:nowrap !important;
    }

    /* =========================
       국내 종목 상세
    ========================= */
    .rl-detail-head{
        display:flex !important;
        flex-direction:column !important;
        gap:12px !important;
        align-items:flex-start !important;
    }

    .rl-detail-title h1{
        font-size:26px !important;
        line-height:1.3 !important;
    }

    .rl-detail-price{
        width:100% !important;
        text-align:left !important;
    }

    .rl-detail-price strong{
        font-size:29px !important;
    }

    .rl-detail-summary{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        gap:9px !important;
    }

    .rl-detail-summary > div{
        padding:12px !important;
    }

    .rl-detail-panel{
        padding:16px !important;
        border-radius:14px !important;
    }

    .rl-news83-head-actions{
        display:flex !important;
        width:100% !important;
        gap:8px !important;
        flex-wrap:wrap !important;
    }

    .rl-news83-item{
        display:block !important;
        padding:13px 0 !important;
    }

    .rl-news83-time{
        display:block !important;
        margin-bottom:5px !important;
    }

    .rl-news83-side{
        display:flex !important;
        gap:8px !important;
        margin-top:7px !important;
        text-align:left !important;
    }

    /* =========================
       테마 상세
    ========================= */
    .rl-tv-title{
        flex-direction:column !important;
        align-items:flex-start !important;
        gap:12px !important;
    }

    .rl-tv h1{
        font-size:27px !important;
    }

    .rl-tv-rate{
        font-size:26px !important;
    }

    .rl-tv-stats{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        gap:9px !important;
    }

    .rl-leader-grid{
        grid-template-columns:1fr !important;
        gap:9px !important;
    }

    .rl-leader{
        padding:14px !important;
    }

    .rl-table-wrap{
        margin:0 -16px !important;
        padding:0 16px !important;
        width:calc(100% + 32px) !important;
        box-sizing:border-box !important;
        overflow-x:auto !important;
    }

    .rl-tv-table{
        min-width:880px !important;
    }

    .rl-theme-news-item{
        display:block !important;
        padding:13px 0 !important;
    }

    .rl-theme-news-time{
        display:block !important;
        margin-bottom:5px !important;
    }

    .rl-theme-news-side{
        margin-top:7px !important;
        text-align:left !important;
    }

    /* =========================
       리포트 페이지
    ========================= */
    .rl-report-page,
    .rl-report-wrap,
    .rl-report-container{
        padding-left:14px !important;
        padding-right:14px !important;
        box-sizing:border-box !important;
    }

    .rl-report-search,
    .rl-report-filter,
    .rl-report-toolbar{
        display:grid !important;
        grid-template-columns:1fr !important;
        gap:7px !important;
    }

    .rl-report-search input,
    .rl-report-search select,
    .rl-report-search button,
    .rl-report-filter input,
    .rl-report-filter select,
    .rl-report-filter button{
        width:100% !important;
        min-width:0 !important;
        box-sizing:border-box !important;
    }

    .rl-report-table-wrap,
    .rl-report-table-container{
        overflow-x:auto !important;
        -webkit-overflow-scrolling:touch;
        max-width:100% !important;
    }

    .rl-report-table{
        min-width:900px !important;
    }

    /* 일반 테이블도 안전하게 */
    table.rl-report-table,
    .report-table{
        min-width:900px !important;
    }

    /* =========================
       뉴스 목록/상세
    ========================= */
    .rl81-head{
        align-items:flex-start !important;
    }

    .rl81-search{
        display:grid !important;
        grid-template-columns:1fr !important;
        width:100% !important;
    }

    .rl81-search input,
    .rl81-search select,
    .rl81-search button{
        width:100% !important;
        box-sizing:border-box !important;
    }

    .rl81-item{
        display:block !important;
        padding:15px !important;
    }

    .rl81-item time{
        display:block !important;
        margin-bottom:5px !important;
    }

    .rl81-meta{
        margin-top:7px !important;
        text-align:left !important;
    }

    .rl81v h1{
        font-size:25px !important;
        line-height:1.42 !important;
    }

    .rl81v-actions{
        display:grid !important;
        grid-template-columns:1fr !important;
    }

    .rl81v-btn{
        width:100% !important;
        box-sizing:border-box !important;
        text-align:center !important;
    }

    /* =========================
       해외주식 목록
    ========================= */
    .rl91-head{
        flex-direction:column !important;
        align-items:flex-start !important;
        gap:12px !important;
    }

    .rl91-tools{
        display:grid !important;
        grid-template-columns:1fr !important;
        width:100% !important;
    }

    .rl91-tools input,
    .rl91-tools select,
    .rl91-tools button{
        width:100% !important;
        box-sizing:border-box !important;
    }

    .rl91-table-wrap{
        overflow-x:auto !important;
        -webkit-overflow-scrolling:touch;
    }

    .rl91-table{
        min-width:940px !important;
    }

    /* =========================
       해외주식 상세
    ========================= */
    .rl91v-top,
    .rl93-top{
        flex-direction:column !important;
        gap:12px !important;
    }

    .rl91v-price,
    .rl93-price{
        text-align:left !important;
        width:100% !important;
    }

    .rl91v h1,
    .rl93 h1{
        font-size:26px !important;
        line-height:1.3 !important;
    }

    .rl91v-grid,
    .rl93-grid{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        gap:9px !important;
    }

    .rl93-panel{
        padding:16px !important;
    }

    .rl93-chart{
        height:250px !important;
    }

    .rl93-list a{
        display:block !important;
        padding:13px 0 !important;
    }

    .rl93-list time{
        display:block !important;
        margin-bottom:5px !important;
    }

    .rl93-list span{
        display:block !important;
        margin-top:6px !important;
        text-align:left !important;
    }

    /* =========================
       통합검색 결과
    ========================= */
    .rl101-search{
        grid-template-columns:1fr !important;
    }

    .rl101-item{
        display:block !important;
    }

    .rl101-side{
        display:block !important;
        margin-top:6px !important;
        text-align:left !important;
    }
}

/* 초소형 모바일 */
@media (max-width:480px){

    .rl-detail-summary,
    .rl-tv-stats,
    .rl91v-grid,
    .rl93-grid{
        grid-template-columns:1fr !important;
    }

    .rl-detail-title h1,
    .rl-tv h1,
    .rl91v h1,
    .rl93 h1,
    .rl81v h1{
        font-size:24px !important;
    }

    .rl-detail-panel,
    .rl-tv-hero,
    .rl91v-hero,
    .rl93-hero,
    .rl93-panel,
    .rl81v-card{
        padding:14px !important;
    }
}
