/* RibbonLine Public Interest Pulse */

.rln-pip{
    width:100%;
    max-width:340px;
    margin:0 auto;
    aspect-ratio:1 / 1;
    font-family:inherit;
}

.rln-pip *,
.rln-pip *::before,
.rln-pip *::after{
    box-sizing:border-box;
}

.rln-pip__link{
    position:relative;
    display:flex;
    width:100%;
    height:100%;
    padding:18px 19px 15px;
    flex-direction:column;
    overflow:hidden;
    border:1px solid rgba(75,73,130,.12);
    border-radius:20px;
    background:
        radial-gradient(
            circle at 90% 5%,
            rgba(91,70,215,.08),
            transparent 30%
        ),
        #fff;
    box-shadow:
        0 14px 38px rgba(50,43,110,.10);
    color:#20233c!important;
    text-decoration:none!important;
    transform:translateZ(0);
    transition:
        transform .25s ease,
        box-shadow .25s ease,
        border-color .25s ease;
}

.rln-pip__link:hover{
    color:#20233c!important;
    transform:translateY(-3px);
    border-color:rgba(91,70,215,.22);
    box-shadow:
        0 20px 46px rgba(50,43,110,.15);
}

.rln-pip__link *,
.rln-pip__link:hover *{
    text-decoration:none!important;
}

.rln-pip__head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:10px;
}

.rln-pip__head > div{
    min-width:0;
}

.rln-pip__head strong{
    display:block;
    color:#191d35!important;
    font-size:22px;
    font-weight:900;
    line-height:1;
    letter-spacing:-.045em;
}

.rln-pip__head small{
    display:block;
    margin-top:6px;
    color:#737991!important;
    font-size:10.5px;
    font-weight:600;
    line-height:1.2;
    white-space:nowrap;
}

.rln-pip__head time{
    padding-top:2px;
    color:#7a8095!important;
    font-size:10px;
    font-weight:700;
    white-space:nowrap;
}

.rln-pip__primary{
    display:flex;
    align-items:center;
    justify-content:center;
    flex-direction:column;
    margin-top:3px;
}

.rln-pip__score{
    color:#1b1f39!important;
    font-size:clamp(58px,6.5vw,80px);
    font-weight:950;
    line-height:.94;
    letter-spacing:-.065em;
    font-variant-numeric:tabular-nums;
}

.rln-pip__delta{
    display:flex;
    align-items:center;
    margin-top:7px;
    padding:6px 12px;
    gap:9px;
    border:1px solid rgba(56,150,111,.14);
    border-radius:999px;
    background:#f5fbf8;
}

.rln-pip__delta b{
    color:#069367!important;
    font-size:14px;
    font-weight:900;
    line-height:1;
}

.rln-pip__delta span{
    padding-left:9px;
    border-left:1px solid #d8dde8;
    color:#60677d!important;
    font-size:10.5px;
    font-weight:750;
}

.rln-pip__delta.is-down{
    border-color:rgba(174,83,76,.14);
    background:#fdf7f6;
}

.rln-pip__delta.is-down b{
    color:#ae534c!important;
}

.rln-pip__delta.is-flat b{
    color:#676d7e!important;
}

.rln-pip__chart-wrap{
    margin-top:7px;
}

.rln-pip__chart{
    display:block;
    width:100%;
    height:70px;
    overflow:visible;
}

.rln-pip__baseline{
    stroke:#e1e4ed;
    stroke-width:1;
    stroke-dasharray:4 5;
}

.rln-pip__area{
    fill:url(#rln-pip-area);
}

.rln-pip__line{
    fill:none;
    stroke:#5742db;
    stroke-width:3;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.rln-pip__point{
    fill:#fff;
    stroke:#5742db;
    stroke-width:2.5;
}

.rln-pip__point.is-last{
    transform-box:fill-box;
    transform-origin:center;
    animation:
        rlnPipPulse 2.4s ease-out infinite;
}

.rln-pip__chart-dates{
    display:flex;
    justify-content:space-between;
    margin-top:-4px;
    padding:0 4px;
    color:#81869a;
    font-size:9.5px;
    font-weight:700;
}

.rln-pip__extrema{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:7px;
    margin-top:8px;
}

.rln-pip__metric{
    display:grid;
    grid-template-columns:32px minmax(0,1fr) auto;
    align-items:center;
    min-width:0;
    padding:8px 8px;
    gap:7px;
    border:1px solid #e7e8f0;
    border-radius:11px;
    background:#fafaff;
}

.rln-pip__metric-icon{
    display:flex;
    align-items:center;
    justify-content:center;
    width:32px;
    height:32px;
    border-radius:50%;
    background:#eeeafd;
    color:#5742db!important;
    font-size:16px;
    font-weight:900;
}

.rln-pip__metric-icon.is-low{
    background:#eaf1ff;
    color:#2861d9!important;
}

.rln-pip__metric div{
    min-width:0;
}

.rln-pip__metric small{
    display:block;
    margin-bottom:2px;
    overflow:hidden;
    color:#85899c!important;
    font-size:8px;
    font-weight:700;
    line-height:1.1;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.rln-pip__metric strong{
    display:block;
    overflow:hidden;
    color:#22263e!important;
    font-size:11.5px;
    font-weight:850;
    line-height:1.15;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.rln-pip__metric b{
    color:#543fd4!important;
    font-size:17px;
    font-weight:950;
    line-height:1;
    font-variant-numeric:tabular-nums;
}

.rln-pip__metric:last-child b{
    color:#2861d9!important;
}

.rln-pip__cta{
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:34px;
    margin-top:auto;
    border-radius:10px;
    background:#f4f2fc;
    color:#4d3bc0!important;
    font-size:11px;
    font-weight:850;
    transition:
        background .2s ease,
        transform .2s ease;
}

.rln-pip__cta span{
    margin-left:7px;
    font-size:16px;
    transition:transform .2s ease;
}

.rln-pip__link:hover .rln-pip__cta{
    background:#ebe7fb;
}

.rln-pip__link:hover .rln-pip__cta span{
    transform:translateX(3px);
}

.rln-pip__empty{
    padding:30px 20px;
    border:1px solid #e5e6ed;
    border-radius:18px;
    background:#fff;
    color:#777b8d;
    text-align:center;
}

/*
 * No gradient is applied to any text.
 * All typography uses solid colors.
 */

@keyframes rlnPipPulse{
    0%{
        filter:
            drop-shadow(
                0 0 0 rgba(87,66,219,0)
            );
    }
    45%{
        filter:
            drop-shadow(
                0 0 5px rgba(87,66,219,.45)
            );
    }
    100%{
        filter:
            drop-shadow(
                0 0 0 rgba(87,66,219,0)
            );
    }
}

@media(max-width:767px){

    .rln-pip{
        max-width:350px;
    }

    .rln-pip__link{
        padding:
            17px 17px 14px;
    }
}

@media(prefers-reduced-motion:reduce){

    .rln-pip__link,
    .rln-pip__cta,
    .rln-pip__cta span,
    .rln-pip__point.is-last{
        transition:none!important;
        animation:none!important;
    }
}

/* RLN_PULSE_HERO_COMPACT_START */

/*
 * Homepage hero only.
 * Keep shortcode reusable elsewhere at its normal size.
 */
body.home .rln-pip{
    width:275px !important;
    max-width:275px !important;
    height:275px !important;
    aspect-ratio:1 / 1 !important;
    margin:0 auto !important;
}

body.home .rln-pip__link{
    padding:13px 14px 11px !important;
    border-radius:16px !important;
    box-shadow:
        0 10px 28px rgba(50,43,110,.10) !important;
}


/* header */

body.home .rln-pip__head strong{
    font-size:18px !important;
}

body.home .rln-pip__head small{
    margin-top:3px !important;
    font-size:8px !important;
}

body.home .rln-pip__head time{
    font-size:8px !important;
}


/* main score */

body.home .rln-pip__primary{
    margin-top:1px !important;
}

body.home .rln-pip__score{
    font-size:58px !important;
    line-height:.9 !important;
}

body.home .rln-pip__delta{
    margin-top:5px !important;
    padding:4px 9px !important;
    gap:6px !important;
}

body.home .rln-pip__delta b{
    font-size:11px !important;
}

body.home .rln-pip__delta span{
    padding-left:7px !important;
    font-size:8px !important;
}


/* chart */

body.home .rln-pip__chart-wrap{
    margin-top:4px !important;
}

body.home .rln-pip__chart{
    height:52px !important;
}

body.home .rln-pip__chart-dates{
    margin-top:-3px !important;
    font-size:7.5px !important;
}


/* high / low */

body.home .rln-pip__extrema{
    gap:5px !important;
    margin-top:5px !important;
}

body.home .rln-pip__metric{
    grid-template-columns:24px minmax(0,1fr) auto !important;
    padding:5px 6px !important;
    gap:5px !important;
    border-radius:8px !important;
}

body.home .rln-pip__metric-icon{
    width:24px !important;
    height:24px !important;
    font-size:12px !important;
}

body.home .rln-pip__metric small{
    font-size:6.5px !important;
}

body.home .rln-pip__metric strong{
    font-size:9px !important;
}

body.home .rln-pip__metric b{
    font-size:14px !important;
}


/* CTA */

body.home .rln-pip__cta{
    min-height:27px !important;
    margin-top:auto !important;
    border-radius:8px !important;
    font-size:9px !important;
}

body.home .rln-pip__cta span{
    margin-left:5px !important;
    font-size:13px !important;
}


/*
 * Hero card should not jump too strongly on hover.
 */
body.home .rln-pip__link:hover{
    transform:translateY(-2px) !important;
}


/* tablet */

@media(min-width:768px) and (max-width:1100px){

    body.home .rln-pip{
        width:255px !important;
        max-width:255px !important;
        height:255px !important;
    }

    body.home .rln-pip__score{
        font-size:52px !important;
    }

    body.home .rln-pip__chart{
        height:45px !important;
    }
}


/*
 * Mobile is not forced to the tiny desktop hero size.
 * It may use more of the screen width.
 */
@media(max-width:767px){

    body.home .rln-pip{
        width:min(310px,92vw) !important;
        max-width:310px !important;
        height:auto !important;
        aspect-ratio:1 / 1 !important;
    }
}

/* RLN_PULSE_HERO_COMPACT_END */

/* RLN_PULSE_TEXT_OPTIMIZE_START */

/*
 * HERO CARD
 * 정보는 줄이고 핵심 숫자/분야명 가독성은 확대.
 */

/* 불필요한 설명 제거 */
body.home .rln-pip__head small {
    display:none !important;
}

body.home .rln-pip__metric small {
    display:none !important;
}


/* ---------------------------------------------------------
   HEADER
--------------------------------------------------------- */

body.home .rln-pip__head {
    align-items:center !important;
}

body.home .rln-pip__head strong {
    font-size:20px !important;
    line-height:1 !important;
    letter-spacing:-0.045em !important;
}

body.home .rln-pip__head time {
    padding:0 !important;
    font-size:8.5px !important;
    font-weight:700 !important;
    color:#858a9d !important;
}


/* ---------------------------------------------------------
   SCORE
--------------------------------------------------------- */

body.home .rln-pip__primary {
    margin-top:4px !important;
}

body.home .rln-pip__score {
    font-size:64px !important;
    line-height:.9 !important;
    letter-spacing:-.06em !important;
}

body.home .rln-pip__delta {
    margin-top:6px !important;
    padding:5px 10px !important;
}

body.home .rln-pip__delta b {
    font-size:12px !important;
}

body.home .rln-pip__delta span {
    font-size:8.5px !important;
    font-weight:800 !important;
}


/* ---------------------------------------------------------
   CHART
--------------------------------------------------------- */

body.home .rln-pip__chart-wrap {
    margin-top:7px !important;
}

body.home .rln-pip__chart {
    height:56px !important;
}

body.home .rln-pip__chart-dates {
    margin-top:-2px !important;
    font-size:8px !important;
    font-weight:750 !important;
}


/* ---------------------------------------------------------
   HIGH / LOW
   설명 제거 후 분야명과 숫자를 크게
--------------------------------------------------------- */

body.home .rln-pip__extrema {
    gap:6px !important;
    margin-top:7px !important;
}

body.home .rln-pip__metric {
    grid-template-columns:
        27px
        minmax(0,1fr)
        auto !important;

    min-height:42px !important;
    padding:6px 7px !important;
    gap:6px !important;
}

body.home .rln-pip__metric-icon {
    width:27px !important;
    height:27px !important;
    font-size:13px !important;
}

body.home .rln-pip__metric strong {
    font-size:10.5px !important;
    line-height:1.1 !important;
    font-weight:900 !important;
    letter-spacing:-.025em !important;
}

body.home .rln-pip__metric b {
    font-size:17px !important;
    line-height:1 !important;
    font-weight:950 !important;
}


/* ---------------------------------------------------------
   CTA
--------------------------------------------------------- */

body.home .rln-pip__cta {
    min-height:29px !important;
    font-size:10px !important;
    font-weight:900 !important;
}


/* ---------------------------------------------------------
   IMPORTANT:
   카드 hover 시 움직임 완전히 제거
--------------------------------------------------------- */

body.home .rln-pip__link,
body.home .rln-pip__link:hover,
body.home .rln-pip__link:focus,
body.home .rln-pip__link:active {
    transform:none !important;

    border-color:
        rgba(75,73,130,.12) !important;

    box-shadow:
        0 10px 28px
        rgba(50,43,110,.10) !important;
}


/* CTA도 hover 시 흔들리지 않게 */
body.home .rln-pip__link:hover .rln-pip__cta {
    background:#f4f2fc !important;
}

body.home .rln-pip__link:hover .rln-pip__cta span {
    transform:none !important;
}


/* ---------------------------------------------------------
   작은 화면에서도 핵심 정보 유지
--------------------------------------------------------- */

@media(max-width:1100px) and (min-width:768px){

    body.home .rln-pip__score {
        font-size:58px !important;
    }

    body.home .rln-pip__head strong {
        font-size:18px !important;
    }

    body.home .rln-pip__metric strong {
        font-size:9.5px !important;
    }

    body.home .rln-pip__metric b {
        font-size:15px !important;
    }
}

/* RLN_PULSE_TEXT_OPTIMIZE_END */

/* RLN_PULSE_BALANCE_TOOLTIP_START */

/* ---------------------------------------------------------
   HERO: 전체 균형 재조정
--------------------------------------------------------- */

body.home .rln-pip{
    width:275px !important;
    max-width:275px !important;
    height:275px !important;
    aspect-ratio:1 / 1 !important;
}

body.home .rln-pip__link{
    padding:12px 13px 11px !important;
    border-radius:16px !important;
}

/* 카드 hover 들썩임 제거 */
body.home .rln-pip__link,
body.home .rln-pip__link:hover,
body.home .rln-pip__link:focus,
body.home .rln-pip__link:active{
    transform:none !important;
    box-shadow:0 10px 28px rgba(50,43,110,.10) !important;
    border-color:rgba(75,73,130,.12) !important;
}

body.home .rln-pip__link:hover .rln-pip__cta{
    background:#f4f2fc !important;
}

body.home .rln-pip__link:hover .rln-pip__cta span{
    transform:none !important;
}

/* ---------------------------------------------------------
   HEADER / SCORE
--------------------------------------------------------- */

body.home .rln-pip__head{
    align-items:flex-start !important;
    margin-bottom:2px !important;
}

body.home .rln-pip__head strong{
    font-size:17px !important;
    line-height:1 !important;
    letter-spacing:-.04em !important;
}

body.home .rln-pip__head small{
    display:none !important;
}

body.home .rln-pip__head time{
    padding-top:1px !important;
    font-size:7.7px !important;
    font-weight:700 !important;
    color:#8a8fa1 !important;
}

body.home .rln-pip__primary{
    margin-top:1px !important;
}

body.home .rln-pip__score{
    font-size:54px !important;
    line-height:.92 !important;
    letter-spacing:-.055em !important;
}

body.home .rln-pip__delta{
    margin-top:5px !important;
    padding:4px 9px !important;
    gap:6px !important;
}

body.home .rln-pip__delta b{
    font-size:11px !important;
}

body.home .rln-pip__delta span{
    font-size:8px !important;
    font-weight:800 !important;
    padding-left:7px !important;
}

/* ---------------------------------------------------------
   CHART
--------------------------------------------------------- */

body.home .rln-pip__chart-wrap{
    position:relative !important;
    margin-top:7px !important;
}

body.home .rln-pip__chart{
    height:56px !important;
}

body.home .rln-pip__chart-dates{
    margin-top:-2px !important;
    padding:0 2px !important;
    font-size:7.5px !important;
    font-weight:750 !important;
}

/* 그래프 포인트 hover 힌트 */
body.home .rln-pip__point{
    cursor:pointer;
}

body.home .rln-pip__tooltip{
    position:absolute;
    left:0;
    top:0;
    z-index:5;
    padding:6px 8px;
    border-radius:8px;
    background:rgba(28,32,54,.96);
    color:#fff;
    font-size:8px;
    font-weight:800;
    line-height:1.2;
    white-space:nowrap;
    pointer-events:none;
    box-shadow:0 8px 20px rgba(22,24,45,.18);
    transform:translate(-50%, calc(-100% - 8px));
    opacity:0;
    visibility:hidden;
    transition:opacity .12s ease, visibility .12s ease;
}

body.home .rln-pip__tooltip.is-visible{
    opacity:1;
    visibility:visible;
}

/* ---------------------------------------------------------
   HIGH / LOW
   잘림 제거 + 가독성 중심 재배치
--------------------------------------------------------- */

body.home .rln-pip__extrema{
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:6px !important;
    margin-top:7px !important;
}

body.home .rln-pip__metric{
    display:grid !important;
    grid-template-columns:20px minmax(0,1fr) auto !important;
    align-items:center !important;
    min-height:40px !important;
    padding:5px 6px !important;
    gap:5px !important;
    border-radius:9px !important;
}

body.home .rln-pip__metric-icon{
    width:20px !important;
    height:20px !important;
    font-size:10px !important;
}

body.home .rln-pip__metric div{
    min-width:0 !important;
}

body.home .rln-pip__metric small{
    display:none !important;
}

body.home .rln-pip__metric strong{
    display:block !important;
    overflow:visible !important;
    text-overflow:clip !important;
    white-space:nowrap !important;
    word-break:keep-all !important;
    font-size:9px !important;
    line-height:1 !important;
    font-weight:900 !important;
    letter-spacing:-.03em !important;
    color:#22263e !important;
}

body.home .rln-pip__metric b{
    font-size:15px !important;
    line-height:1 !important;
    font-weight:950 !important;
}

/* ---------------------------------------------------------
   CTA
--------------------------------------------------------- */

body.home .rln-pip__cta{
    min-height:28px !important;
    margin-top:auto !important;
    font-size:9px !important;
    font-weight:900 !important;
    letter-spacing:-.01em !important;
}

body.home .rln-pip__cta span{
    font-size:12px !important;
    margin-left:4px !important;
}

/* ---------------------------------------------------------
   중간 해상도 대응
--------------------------------------------------------- */

@media(min-width:768px) and (max-width:1100px){
    body.home .rln-pip{
        width:260px !important;
        max-width:260px !important;
        height:260px !important;
    }

    body.home .rln-pip__score{
        font-size:50px !important;
    }

    body.home .rln-pip__metric strong{
        font-size:8.5px !important;
    }

    body.home .rln-pip__metric b{
        font-size:14px !important;
    }
}

/* RLN_PULSE_BALANCE_TOOLTIP_END */
/* RLN_PULSE_DAILY_EVAL_LAYOUT_START */

/* ---------------------------------------------------------
   HEADER
--------------------------------------------------------- */

body.home .rln-pip__head{
    align-items:center !important;
    margin-bottom:10px !important;
}

body.home .rln-pip__title{
    display:block !important;
    color:#23273c !important;
    font-size:15.5px !important;
    font-weight:900 !important;
    line-height:1 !important;
    letter-spacing:-.035em !important;
    white-space:nowrap;
}

/* 이전 평가 제목 스타일은 더 이상 화면에 사용하지 않음 */
body.home .rln-pip__head small{
    display:none !important;
}

body.home .rln-pip__head time{
    padding:0 !important;
    font-size:7.5px !important;
    line-height:1 !important;
    color:#9195a5 !important;
}


/* ---------------------------------------------------------
   MAIN INDEX
   평가 상태에 따라 종합 숫자 색상 변경
--------------------------------------------------------- */

body.home .rln-pip__primary{
    margin-top:0 !important;
}

body.home .rln-pip__score{
    font-size:51px !important;
    line-height:.9 !important;
    font-weight:950 !important;
    letter-spacing:-.055em !important;
    transition:color .25s ease;
}

/* 양호 */
body.home .rln-pip__score.is-good{
    color:#168762 !important;
}

/* 개선 우세 */
body.home .rln-pip__score.is-improving{
    color:#4d3cc6 !important;
}

/* 균형 */
body.home .rln-pip__score.is-balanced{
    color:#3d4f7d !important;
}

/* 관찰 */
body.home .rln-pip__score.is-watch{
    color:#a87322 !important;
}

/* 공익 우려 */
body.home .rln-pip__score.is-concern{
    color:#a94e49 !important;
}


/* ---------------------------------------------------------
   DELTA | EVALUATION | DAILY COMPARISON
--------------------------------------------------------- */

body.home .rln-pip__delta{
    display:inline-flex !important;
    align-items:center !important;

    margin-top:6px !important;
    padding:5px 9px !important;
    gap:0 !important;

    border-radius:999px !important;
}

body.home .rln-pip__delta > b{
    padding:0 7px 0 0 !important;
    border:0 !important;

    font-size:10.5px !important;
    line-height:1 !important;
    white-space:nowrap;
}


/*
 * 평가
 */
body.home .rln-pip__evaluation-inline{
    display:inline-flex !important;
    align-items:center !important;

    padding:0 7px !important;

    border-left:1px solid #d9dde7 !important;

    font-size:8px !important;
    line-height:1 !important;
    font-weight:900 !important;

    white-space:nowrap;
}


/* 평가 색상 */
body.home .rln-pip__evaluation-inline.is-good{
    color:#168762 !important;
}

body.home .rln-pip__evaluation-inline.is-improving{
    color:#4d3cc6 !important;
}

body.home .rln-pip__evaluation-inline.is-balanced{
    color:#3d4f7d !important;
}

body.home .rln-pip__evaluation-inline.is-watch{
    color:#a87322 !important;
}

body.home .rln-pip__evaluation-inline.is-concern{
    color:#a94e49 !important;
}


/*
 * 전일 대비
 */
body.home .rln-pip__delta-label{
    display:inline-block !important;

    padding:0 0 0 7px !important;

    border-left:1px solid #d9dde7 !important;

    color:#676d7f !important;

    font-size:7.5px !important;
    line-height:1 !important;
    font-weight:800 !important;

    white-space:nowrap;
}


/*
 * 과거에 .rln-pip__delta span 전체에 들어갔던
 * 스타일을 이 두 전용 span에서 완전히 재정의한다.
 */
body.home
.rln-pip__delta
.rln-pip__evaluation-inline,
body.home
.rln-pip__delta
.rln-pip__delta-label{
    margin:0 !important;
}


/* ---------------------------------------------------------
   카드 hover 시 이동 금지 유지
--------------------------------------------------------- */

body.home .rln-pip__link,
body.home .rln-pip__link:hover,
body.home .rln-pip__link:focus,
body.home .rln-pip__link:active{
    transform:none !important;
}


/* RLN_PULSE_DAILY_EVAL_LAYOUT_END */
/* RLN_PIP_EVALUATION_HOVER_START */

/* ---------------------------------------------------------
   상단 평가 문구
--------------------------------------------------------- */

body.home .rln-pip__evaluation{
    position:relative;
    display:inline-flex !important;
    align-items:center;
    width:auto;
    max-width:130px;
    font-size:16px !important;
    font-weight:900 !important;
    line-height:1 !important;
    letter-spacing:-.035em !important;
    white-space:nowrap;
}

/* 작은 상태점 */
body.home .rln-pip__evaluation::before{
    content:"";
    width:6px;
    height:6px;
    margin-right:6px;
    flex:0 0 6px;
    border-radius:50%;
    background:currentColor;
}

/* 평가별 색상 */
body.home .rln-pip__evaluation.is-good{
    color:#188762 !important;
}

body.home .rln-pip__evaluation.is-improving{
    color:#5141c9 !important;
}

body.home .rln-pip__evaluation.is-balanced{
    color:#454b62 !important;
}

body.home .rln-pip__evaluation.is-watch{
    color:#a6772f !important;
}

body.home .rln-pip__evaluation.is-concern{
    color:#a6534d !important;
}


/* ---------------------------------------------------------
   차트 전체가 hover 감지 영역
--------------------------------------------------------- */

body.home .rln-pip__chart{
    cursor:crosshair !important;
    touch-action:pan-y;
}

/*
 * 선택된 점은 조금 확대.
 * 실제 이벤트 영역은 JS가 차트 전체를 사용한다.
 */
body.home .rln-pip__point{
    transition:
        r .12s ease,
        stroke-width .12s ease,
        filter .12s ease;
}

body.home .rln-pip__point.is-hovered{
    r:5.5px;
    stroke-width:3px;
    filter:
        drop-shadow(
            0 0 4px rgba(87,66,219,.38)
        );
}


/* 세로 가이드 */
body.home .rln-pip__hover-guide{
    stroke:#8c82dd;
    stroke-width:1;
    stroke-dasharray:3 3;
    opacity:0;
    pointer-events:none;
}

body.home .rln-pip__hover-guide.is-visible{
    opacity:.55;
}


/* tooltip 조금 더 읽기 쉽게 */
body.home .rln-pip__tooltip{
    padding:6px 9px !important;
    font-size:8.5px !important;
    line-height:1.25 !important;
}


/*
 * 카드 자체 hover 이동은 계속 금지.
 */
body.home .rln-pip__link,
body.home .rln-pip__link:hover,
body.home .rln-pip__link:focus,
body.home .rln-pip__link:active{
    transform:none !important;
}

/* RLN_PIP_EVALUATION_HOVER_END */

/* RLN_PULSE_FINAL_VISUAL_LOCK_START */

/*
 * FINAL HOMEPAGE HERO VISUAL RULES
 *
 * Intentionally high specificity.
 * This block is the single final authority for:
 * - small title
 * - sector labels
 * - sector values
 * - unframed sector layout
 *
 * It does NOT alter:
 * score calculation / score color / chart / tooltip / data.
 */


/* =========================================================
   TITLE
   ========================================================= */

html body.home
.rln-pip[data-rln-public-interest-pulse]
.rln-pip__head
strong.rln-pip__title {

    display:block !important;

    margin:0 !important;
    padding:0 !important;

    font-size:13px !important;
    font-weight:700 !important;
    line-height:1 !important;

    letter-spacing:-0.025em !important;

    color:#50566a !important;

    white-space:nowrap !important;
}


/* =========================================================
   SECTOR AREA
   ========================================================= */

html body.home
.rln-pip[data-rln-public-interest-pulse]
.rln-pip__extrema {

    display:grid !important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;

    column-gap:10px !important;
    row-gap:0 !important;

    margin-top:7px !important;
    padding:0 2px !important;

    border:0 !important;
    border-radius:0 !important;

    background:transparent !important;

    box-shadow:none !important;
}


/* =========================================================
   REMOVE THE TWO OUTER MINI-CARDS
   ========================================================= */

html body.home
.rln-pip[data-rln-public-interest-pulse]
.rln-pip__extrema
.rln-pip__metric {

    display:grid !important;

    grid-template-columns:
        20px
        minmax(0,1fr)
        auto !important;

    align-items:center !important;

    min-width:0 !important;
    min-height:35px !important;

    margin:0 !important;
    padding:3px 1px !important;

    column-gap:6px !important;

    border:0 !important;
    outline:0 !important;
    border-radius:0 !important;

    background:transparent !important;

    box-shadow:none !important;

    overflow:visible !important;
}


/* kill any decorative card layer */

html body.home
.rln-pip[data-rln-public-interest-pulse]
.rln-pip__metric::before,

html body.home
.rln-pip[data-rln-public-interest-pulse]
.rln-pip__metric::after {

    content:none !important;
    display:none !important;

    border:0 !important;
    background:none !important;
    box-shadow:none !important;
}


/* =========================================================
   ICON
   ========================================================= */

html body.home
.rln-pip[data-rln-public-interest-pulse]
.rln-pip__metric
.rln-pip__metric-icon {

    display:flex !important;

    align-items:center !important;
    justify-content:center !important;

    width:20px !important;
    height:20px !important;

    margin:0 !important;

    border:0 !important;
    border-radius:50% !important;

    font-size:10px !important;
    line-height:1 !important;

    box-shadow:none !important;
}


/* =========================================================
   REMOVE TINY DESCRIPTIVE LABEL
   ========================================================= */

html body.home
.rln-pip[data-rln-public-interest-pulse]
.rln-pip__metric
small {

    display:none !important;
}


/* =========================================================
   SECTOR NAME
   환경·보전 / 돌봄·복지
   ========================================================= */

html body.home
.rln-pip[data-rln-public-interest-pulse]
.rln-pip__metric
div {

    min-width:0 !important;
    width:auto !important;

    margin:0 !important;
    padding:0 !important;

    overflow:visible !important;
}


html body.home
.rln-pip[data-rln-public-interest-pulse]
.rln-pip__metric
div
strong {

    display:block !important;

    width:auto !important;
    max-width:none !important;

    margin:0 !important;
    padding:0 !important;

    overflow:visible !important;

    white-space:nowrap !important;
    word-break:keep-all !important;

    text-overflow:clip !important;

    font-size:11.5px !important;
    font-weight:850 !important;
    line-height:1 !important;

    letter-spacing:-0.04em !important;

    color:#25293f !important;
}


/* =========================================================
   SECTOR SCORE
   56.9 / 53.4
   ========================================================= */

html body.home
.rln-pip[data-rln-public-interest-pulse]
.rln-pip__metric
b {

    display:block !important;

    margin:0 !important;
    padding:0 !important;

    font-size:17px !important;
    font-weight:950 !important;
    line-height:1 !important;

    letter-spacing:-0.035em !important;

    font-variant-numeric:tabular-nums;

    white-space:nowrap !important;
}


/* =========================================================
   DO NOT MOVE CARD ON HOVER
   ========================================================= */

html body.home
.rln-pip[data-rln-public-interest-pulse]
.rln-pip__link,

html body.home
.rln-pip[data-rln-public-interest-pulse]
.rln-pip__link:hover,

html body.home
.rln-pip[data-rln-public-interest-pulse]
.rln-pip__link:focus,

html body.home
.rln-pip[data-rln-public-interest-pulse]
.rln-pip__link:active {

    transform:none !important;
}


/* RLN_PULSE_FINAL_VISUAL_LOCK_END */

/* RLN_PULSE_HIGH_LOW_LABEL_START */

/* ---------------------------------------------------------
   최고 / 최저 + 분야명
--------------------------------------------------------- */

html body.home
.rln-pip[data-rln-public-interest-pulse]
.rln-pip__metric-copy{
    display:flex !important;
    align-items:center !important;
    min-width:0 !important;
    gap:4px !important;
    overflow:visible !important;
}

html body.home
.rln-pip[data-rln-public-interest-pulse]
.rln-pip__rank-label{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;

    flex:0 0 auto !important;

    padding:2px 4px !important;

    border-radius:4px !important;

    font-size:7.5px !important;
    font-weight:900 !important;
    line-height:1 !important;

    white-space:nowrap !important;
}

html body.home
.rln-pip[data-rln-public-interest-pulse]
.rln-pip__rank-label.is-high{
    color:#4d3cc6 !important;
    background:#f0edff !important;
}

html body.home
.rln-pip[data-rln-public-interest-pulse]
.rln-pip__rank-label.is-low{
    color:#315fc9 !important;
    background:#edf3ff !important;
}


/*
 * 분야명은 최고/최저 라벨 뒤에 붙음.
 */
html body.home
.rln-pip[data-rln-public-interest-pulse]
.rln-pip__metric-copy
strong{
    display:block !important;

    min-width:0 !important;
    max-width:none !important;

    overflow:visible !important;
    text-overflow:clip !important;

    white-space:nowrap !important;
    word-break:keep-all !important;

    font-size:10.5px !important;
    font-weight:900 !important;
    line-height:1 !important;

    color:#25293f !important;
}


/* ---------------------------------------------------------
   CTA 조금 확대
--------------------------------------------------------- */

html body.home
.rln-pip[data-rln-public-interest-pulse]
.rln-pip__cta{
    min-height:30px !important;

    font-size:10.5px !important;
    font-weight:850 !important;
    line-height:1 !important;

    letter-spacing:-.015em !important;
}

html body.home
.rln-pip[data-rln-public-interest-pulse]
.rln-pip__cta
span{
    margin-left:5px !important;
    font-size:13px !important;
}

/* RLN_PULSE_HIGH_LOW_LABEL_END */

/* RLN_PULSE_LOWER_METRIC_OVERLAP_FIX_START */

/* ---------------------------------------------------------
   하단 최고/최저 카드 겹침 해결
   - 아이콘 제거
   - 왼쪽: 최고/최저 + 분야명
   - 오른쪽: 점수
--------------------------------------------------------- */

html body.home
.rln-pip[data-rln-public-interest-pulse]
.rln-pip__extrema{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
    gap:10px !important;
    margin-top:8px !important;
    padding:0 2px !important;
}

/* 개별 항목 */
html body.home
.rln-pip[data-rln-public-interest-pulse]
.rln-pip__extrema
.rln-pip__metric{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) auto !important;
    align-items:center !important;

    min-width:0 !important;
    min-height:34px !important;

    margin:0 !important;
    padding:2px 0 !important;

    column-gap:8px !important;

    border:0 !important;
    outline:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
}

/* 아이콘 제거 */
html body.home
.rln-pip[data-rln-public-interest-pulse]
.rln-pip__extrema
.rln-pip__metric
.rln-pip__metric-icon{
    display:none !important;
}

/* 왼쪽 텍스트 묶음 */
html body.home
.rln-pip[data-rln-public-interest-pulse]
.rln-pip__metric-copy{
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:4px !important;

    min-width:0 !important;
    overflow:visible !important;
}

/* 최고/최저 배지 */
html body.home
.rln-pip[data-rln-public-interest-pulse]
.rln-pip__rank-label{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    flex:0 0 auto !important;

    padding:2px 4px !important;
    border-radius:4px !important;

    font-size:7px !important;
    font-weight:900 !important;
    line-height:1 !important;
    white-space:nowrap !important;
}

html body.home
.rln-pip[data-rln-public-interest-pulse]
.rln-pip__rank-label.is-high{
    color:#4d3cc6 !important;
    background:#f0edff !important;
}

html body.home
.rln-pip[data-rln-public-interest-pulse]
.rln-pip__rank-label.is-low{
    color:#315fc9 !important;
    background:#edf3ff !important;
}

/* 분야명 */
html body.home
.rln-pip[data-rln-public-interest-pulse]
.rln-pip__metric-copy strong{
    display:block !important;

    min-width:0 !important;
    max-width:none !important;
    margin:0 !important;
    padding:0 !important;

    overflow:visible !important;
    text-overflow:clip !important;
    white-space:nowrap !important;
    word-break:keep-all !important;

    font-size:10.5px !important;
    font-weight:850 !important;
    line-height:1 !important;
    letter-spacing:-0.03em !important;
    color:#25293f !important;
}

/* 점수 */
html body.home
.rln-pip[data-rln-public-interest-pulse]
.rln-pip__extrema
.rln-pip__metric
> b{
    display:block !important;
    flex:0 0 auto !important;

    margin:0 !important;
    padding:0 !important;

    font-size:15.5px !important;
    font-weight:950 !important;
    line-height:1 !important;
    letter-spacing:-0.03em !important;
    white-space:nowrap !important;
}

/* 혹시 strong/b에 기존 겹침용 위치값이 있으면 무효화 */
html body.home
.rln-pip[data-rln-public-interest-pulse]
.rln-pip__metric strong,
html body.home
.rln-pip[data-rln-public-interest-pulse]
.rln-pip__metric b{
    position:static !important;
    left:auto !important;
    right:auto !important;
    top:auto !important;
    bottom:auto !important;
    transform:none !important;
}

/* RLN_PULSE_LOWER_METRIC_OVERLAP_FIX_END */

/* RLN_PULSE_TOOLTIP_CLAMP_START */

/* 차트 래퍼는 tooltip 표시 가능 */
html body.home
.rln-pip[data-rln-public-interest-pulse]
.rln-pip__chart-wrap{
    overflow:visible !important;
    position:relative !important;
}

/* tooltip은 JS가 left/top을 정확히 계산하므로 transform 제거 */
html body.home
.rln-pip[data-rln-public-interest-pulse]
.rln-pip__tooltip{
    position:absolute !important;
    z-index:20 !important;

    max-width:calc(100% - 12px) !important;

    padding:5px 8px !important;
    border-radius:8px !important;

    font-size:10px !important;
    font-weight:800 !important;
    line-height:1.1 !important;
    white-space:nowrap !important;

    color:#ffffff !important;
    background:#2f3346 !important;

    box-shadow:0 8px 20px rgba(32,37,71,.18) !important;

    pointer-events:none !important;

    transform:none !important;
}

/* 툴팁이 처음 뜰 때만 약한 fade */
html body.home
.rln-pip[data-rln-public-interest-pulse]
.rln-pip__tooltip{
    opacity:0 !important;
    transition:opacity .12s ease !important;
}

html body.home
.rln-pip[data-rln-public-interest-pulse]
.rln-pip__tooltip.is-visible{
    opacity:1 !important;
}

/* RLN_PULSE_TOOLTIP_CLAMP_END */

/* RLN_PULSE_REMOVE_OUTER_BORDER_START */

/* 공익지수 카드 외곽선만 제거 */
html body.home
.rln-pip[data-rln-public-interest-pulse]
.rln-pip__link,
html body.home
.rln-pip[data-rln-public-interest-pulse]
.rln-pip__link:hover,
html body.home
.rln-pip[data-rln-public-interest-pulse]
.rln-pip__link:focus,
html body.home
.rln-pip[data-rln-public-interest-pulse]
.rln-pip__link:active {
    border:0 !important;
    outline:0 !important;
}

/* RLN_PULSE_REMOVE_OUTER_BORDER_END */

/* RLN_PULSE_FLUID_WIDTH_START */

/*
 * 정사각형 고정 해제.
 * Elementor 숏코드 위젯/컬럼의 실제 너비를 100% 사용한다.
 */

html body
.rln-pip[data-rln-public-interest-pulse]{
    display:block !important;

    width:100% !important;
    max-width:none !important;

    height:auto !important;
    min-height:0 !important;

    aspect-ratio:auto !important;

    margin:0 !important;
}


/* 카드 자체도 부모 폭 100% */
html body
.rln-pip[data-rln-public-interest-pulse]
.rln-pip__link{
    width:100% !important;
    max-width:none !important;

    height:auto !important;
    min-height:0 !important;

    aspect-ratio:auto !important;

    margin:0 !important;
}


/*
 * Elementor shortcode wrapper도 폭 제한 제거.
 */
html body
.elementor-widget-shortcode:has(
    .rln-pip[data-rln-public-interest-pulse]
),
html body
.elementor-widget-shortcode:has(
    .rln-pip[data-rln-public-interest-pulse]
)
.elementor-widget-container{
    width:100% !important;
    max-width:none !important;
}


/*
 * 홈페이지에서 앞서 설치했던
 * 275px / 260px / 310px 강제값을 최종적으로 무효화.
 */
html body.home
.rln-pip[data-rln-public-interest-pulse]{
    width:100% !important;
    max-width:none !important;

    height:auto !important;

    aspect-ratio:auto !important;
}


/*
 * 내부 여백은 넓어진 카드에 맞게 조금 여유 있게.
 */
html body.home
.rln-pip[data-rln-public-interest-pulse]
.rln-pip__link{
    padding:14px 16px 12px !important;
}


/*
 * 차트도 가로 폭 전체 사용.
 */
html body
.rln-pip[data-rln-public-interest-pulse]
.rln-pip__chart-wrap,
html body
.rln-pip[data-rln-public-interest-pulse]
.rln-pip__chart{
    width:100% !important;
    max-width:none !important;
}


/*
 * 하단 최고/최저 영역도 가로 공간을 충분히 활용.
 */
html body.home
.rln-pip[data-rln-public-interest-pulse]
.rln-pip__extrema{
    width:100% !important;
}


/*
 * 모바일/태블릿에서도 정사각형으로 되돌아가지 않음.
 */
@media(max-width:1100px){

    html body.home
    .rln-pip[data-rln-public-interest-pulse]{
        width:100% !important;
        max-width:none !important;

        height:auto !important;

        aspect-ratio:auto !important;
    }
}

/* RLN_PULSE_FLUID_WIDTH_END */

/* RLN_PIP_INTUITIVE_COLOR_SYSTEM_20260909_START */

/*
 * 공익지수 색상 직관화
 * 55점 이상   -> green
 * 50점 초과   -> amber
 * 50점 이하   -> red
 *
 * 기존 보라/파랑 느낌을 줄이고,
 * 카드 스캔 시 의미가 즉시 전달되도록 조정.
 */

.rln-pip.is-good,
.rln-pip .is-good{
  --rln-pip-accent:#2f8f5b;
  --rln-pip-soft:#eef8f1;
  --rln-pip-border:#cfe5d6;
}

.rln-pip.is-improving,
.rln-pip.is-improve,
.rln-pip.is-positive,
.rln-pip.is-balanced,
.rln-pip.is-balance,
.rln-pip.is-neutral,
.rln-pip .is-improving,
.rln-pip .is-improve,
.rln-pip .is-positive,
.rln-pip .is-balanced,
.rln-pip .is-balance,
.rln-pip .is-neutral{
  --rln-pip-accent:#b87916;
  --rln-pip-soft:#fff6e8;
  --rln-pip-border:#efd29f;
}

.rln-pip.is-watch,
.rln-pip.is-concern,
.rln-pip .is-watch,
.rln-pip .is-concern{
  --rln-pip-accent:#c45151;
  --rln-pip-soft:#fff0f0;
  --rln-pip-border:#efc7c7;
}

/* 메인 점수 */
.rln-pip.is-good .rln-pip__score,
.rln-pip.is-improving .rln-pip__score,
.rln-pip.is-improve .rln-pip__score,
.rln-pip.is-positive .rln-pip__score,
.rln-pip.is-balanced .rln-pip__score,
.rln-pip.is-balance .rln-pip__score,
.rln-pip.is-neutral .rln-pip__score,
.rln-pip.is-watch .rln-pip__score,
.rln-pip.is-concern .rln-pip__score,
.rln-pip .rln-pip__score.is-good,
.rln-pip .rln-pip__score.is-improving,
.rln-pip .rln-pip__score.is-improve,
.rln-pip .rln-pip__score.is-positive,
.rln-pip .rln-pip__score.is-balanced,
.rln-pip .rln-pip__score.is-balance,
.rln-pip .rln-pip__score.is-neutral,
.rln-pip .rln-pip__score.is-watch,
.rln-pip .rln-pip__score.is-concern{
  color:var(--rln-pip-accent) !important;
}

/* 상태 pill / 요약 badge 류 */
.rln-pip.is-good .rln-pip__summary,
.rln-pip.is-good .rln-pip__status,
.rln-pip.is-good .rln-pip__evaluation,
.rln-pip.is-improving .rln-pip__summary,
.rln-pip.is-improving .rln-pip__status,
.rln-pip.is-improving .rln-pip__evaluation,
.rln-pip.is-improve .rln-pip__summary,
.rln-pip.is-improve .rln-pip__status,
.rln-pip.is-improve .rln-pip__evaluation,
.rln-pip.is-positive .rln-pip__summary,
.rln-pip.is-positive .rln-pip__status,
.rln-pip.is-positive .rln-pip__evaluation,
.rln-pip.is-balanced .rln-pip__summary,
.rln-pip.is-balanced .rln-pip__status,
.rln-pip.is-balanced .rln-pip__evaluation,
.rln-pip.is-balance .rln-pip__summary,
.rln-pip.is-balance .rln-pip__status,
.rln-pip.is-balance .rln-pip__evaluation,
.rln-pip.is-neutral .rln-pip__summary,
.rln-pip.is-neutral .rln-pip__status,
.rln-pip.is-neutral .rln-pip__evaluation,
.rln-pip.is-watch .rln-pip__summary,
.rln-pip.is-watch .rln-pip__status,
.rln-pip.is-watch .rln-pip__evaluation,
.rln-pip.is-concern .rln-pip__summary,
.rln-pip.is-concern .rln-pip__status,
.rln-pip.is-concern .rln-pip__evaluation,
.rln-pip .rln-pip__summary.is-good,
.rln-pip .rln-pip__summary.is-improving,
.rln-pip .rln-pip__summary.is-improve,
.rln-pip .rln-pip__summary.is-positive,
.rln-pip .rln-pip__summary.is-balanced,
.rln-pip .rln-pip__summary.is-balance,
.rln-pip .rln-pip__summary.is-neutral,
.rln-pip .rln-pip__summary.is-watch,
.rln-pip .rln-pip__summary.is-concern,
.rln-pip .rln-pip__status.is-good,
.rln-pip .rln-pip__status.is-improving,
.rln-pip .rln-pip__status.is-improve,
.rln-pip .rln-pip__status.is-positive,
.rln-pip .rln-pip__status.is-balanced,
.rln-pip .rln-pip__status.is-balance,
.rln-pip .rln-pip__status.is-neutral,
.rln-pip .rln-pip__status.is-watch,
.rln-pip .rln-pip__status.is-concern,
.rln-pip .rln-pip__evaluation.is-good,
.rln-pip .rln-pip__evaluation.is-improving,
.rln-pip .rln-pip__evaluation.is-improve,
.rln-pip .rln-pip__evaluation.is-positive,
.rln-pip .rln-pip__evaluation.is-balanced,
.rln-pip .rln-pip__evaluation.is-balance,
.rln-pip .rln-pip__evaluation.is-neutral,
.rln-pip .rln-pip__evaluation.is-watch,
.rln-pip .rln-pip__evaluation.is-concern{
  color:var(--rln-pip-accent) !important;
  background:var(--rln-pip-soft) !important;
  border-color:var(--rln-pip-border) !important;
}

/* 최고/최저 표시도 직관화 */
.rln-pip .rln-pip__metric-icon.is-high,
.rln-pip .rln-pip__rank-label.is-high{
  color:#2f8f5b !important;
}

.rln-pip .rln-pip__metric-icon.is-low,
.rln-pip .rln-pip__rank-label.is-low{
  color:#c45151 !important;
}

/* hover 시도 과장되지 않게 */
.rln-pip .rln-pip__summary,
.rln-pip .rln-pip__status,
.rln-pip .rln-pip__evaluation{
  box-shadow:none !important;
}

/* RLN_PIP_INTUITIVE_COLOR_SYSTEM_20260909_END */
