.hp-public-header{height:70px;padding:0 max(28px,4vw);display:flex;align-items:center;justify-content:space-between;gap:24px;background:#fff;border-bottom:1px solid #e5eaf1;position:relative;z-index:20}
.hp-public-logo{color:#2463eb;text-decoration:none;font-size:25px;font-weight:950;letter-spacing:-1px;white-space:nowrap}
.hp-public-nav{display:flex;align-items:center;gap:30px;flex-wrap:wrap;justify-content:flex-end}
.hp-public-nav a{color:#44516a;text-decoration:none;font-size:14px;font-weight:800;white-space:nowrap}
.hp-public-nav a:hover,.hp-public-nav a.active{color:#2463eb}
.hp-public-nav .hp-admin-link{border:1px solid #d5ddea;border-radius:9px;padding:9px 12px;background:#fff}
@media(max-width:760px){.hp-public-header{height:auto;min-height:64px;padding:12px 18px;align-items:flex-start;flex-direction:column;gap:9px}.hp-public-nav{gap:12px 18px}.hp-public-nav a{font-size:13px}.hp-public-logo{font-size:22px}}

.hp-public-footer{max-width:1180px;margin:40px auto 0;padding:28px 20px 44px;border-top:1px solid #e3e8f0;color:#738096;display:flex;justify-content:space-between;gap:24px;font-size:13px}.hp-public-footer b,.hp-public-footer span{display:block}.hp-public-footer b{color:#172033;margin-bottom:6px}.hp-public-footer nav{display:flex;flex-wrap:wrap;gap:14px}.hp-public-footer a{color:#627187;text-decoration:none;font-weight:700}@media(max-width:720px){.hp-public-footer{flex-direction:column}}

/* =========================================================
   v11.25 브랜드 로고 실적용
   ========================================================= */
.hp-public-logo{display:flex;align-items:center;flex:0 0 auto;line-height:0;text-decoration:none}
.hp-public-logo-img{display:block;width:205px;height:auto;max-height:48px;object-fit:contain}
@media(max-width:760px){.hp-public-logo-img{width:176px;max-height:42px}}
@media(max-width:420px){.hp-public-logo-img{width:158px;max-height:38px}}


/* =========================================================
   v11.26 모바일 헤더 / 브랜드 로고 최적화
   ========================================================= */

/* PC: 실제 화면에서 조금 작아 보였던 로고만 확대 */
@media(min-width:761px){
  .hp-public-logo-img{
    width:238px;
    max-height:52px;
  }
}

/* PC에서는 햄버거 숨김 */
.hp-mobile-menu-toggle{
  display:none;
}

@media(max-width:760px){
  .hp-public-header{
    height:74px;
    min-height:74px;
    padding:0 18px;
    flex-direction:row;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    position:relative;
    overflow:visible;
  }

  .hp-public-logo-img{
    width:176px;
    max-height:42px;
  }

  .hp-mobile-menu-toggle{
    display:flex;
    width:44px;
    height:44px;
    flex:0 0 44px;
    padding:0;
    border:1px solid #dbe3ef;
    border-radius:12px;
    background:#fff;
    align-items:center;
    justify-content:center;
    flex-direction:column;
    gap:5px;
    cursor:pointer;
  }

  .hp-mobile-menu-toggle span{
    display:block;
    width:20px;
    height:2px;
    border-radius:999px;
    background:#23324a;
    transition:transform .18s ease,opacity .18s ease;
  }

  .hp-mobile-menu-toggle[aria-expanded="true"] span:nth-child(1){
    transform:translateY(7px) rotate(45deg);
  }
  .hp-mobile-menu-toggle[aria-expanded="true"] span:nth-child(2){
    opacity:0;
  }
  .hp-mobile-menu-toggle[aria-expanded="true"] span:nth-child(3){
    transform:translateY(-7px) rotate(-45deg);
  }

  .hp-public-nav{
    display:none;
    position:absolute;
    left:12px;
    right:12px;
    top:calc(100% + 6px);
    z-index:80;
    padding:8px;
    border:1px solid #dfe6ef;
    border-radius:14px;
    background:#fff;
    box-shadow:0 16px 38px rgba(31,50,82,.16);
  }

  .hp-public-nav.is-open{
    display:grid;
    grid-template-columns:1fr;
    gap:2px;
  }

  .hp-public-nav a{
    display:block;
    padding:13px 14px;
    border-radius:10px;
    font-size:15px;
    line-height:1.25;
    text-align:left;
    white-space:nowrap;
  }

  .hp-public-nav a:hover,
  .hp-public-nav a:focus,
  .hp-public-nav a.active{
    background:#f3f7ff;
    color:#2463eb;
  }
}

@media(max-width:420px){
  .hp-public-header{
    padding:0 14px;
  }
  .hp-public-logo-img{
    width:158px;
    max-height:39px;
  }
}


/* =========================================================
   v11.26.5 공개 상단 헤더 sticky 고정
   ========================================================= */
.hp-public-header{
  position:sticky;
  top:0;
  z-index:70;
  background:rgba(255,255,255,.96);
  backdrop-filter:saturate(140%) blur(8px);
  -webkit-backdrop-filter:saturate(140%) blur(8px);
  transition:box-shadow .18s ease,border-color .18s ease,background .18s ease;
}

/* 스크롤 시 가벼운 그림자 */
.hp-public-header.is-scrolled{
  box-shadow:0 8px 22px rgba(30,48,78,.10);
  border-bottom-color:#dbe3ef;
}

/* 모바일 드롭다운은 sticky 헤더 기준으로 자연스럽게 열림 */
@media(max-width:760px){
  .hp-public-header{
    top:0;
  }
  .hp-public-nav{
    z-index:90;
  }
}


/* =========================================================
   v11.27 공개 헤더 가독성 강화
   ========================================================= */
@media(min-width:761px){
  .hp-public-header{
    height:82px;
    padding:0 max(32px,4vw);
    gap:28px;
  }
  .hp-public-logo-img{
    width:264px;
    max-height:56px;
  }
  .hp-public-nav{
    gap:42px;
  }
  .hp-public-nav a{
    position:relative;
    font-size:18px;
    font-weight:850;
    color:#22314d;
    letter-spacing:-.15px;
    padding:4px 0;
  }
  .hp-public-nav a::after{
    content:"";
    position:absolute;
    left:0;
    right:0;
    bottom:-10px;
    height:3px;
    border-radius:999px;
    background:transparent;
    transform:scaleX(.5);
    opacity:0;
    transition:transform .18s ease,opacity .18s ease,background .18s ease;
  }
  .hp-public-nav a:hover::after,
  .hp-public-nav a.active::after{
    background:#2463eb;
    opacity:1;
    transform:scaleX(1);
  }
  .hp-public-nav a:hover,
  .hp-public-nav a.active{
    color:#2463eb;
  }
}

/* =========================================================
   v11.28.4 공개 헤더 잘림/줄바꿈 보정
   ========================================================= */
@media(min-width:981px){
  .hp-public-header{
    align-items:center;
  }
  .hp-public-nav{
    display:flex !important;
    flex-wrap:nowrap;
    white-space:nowrap;
    overflow:visible;
  }
  .hp-mobile-menu-toggle{
    display:none !important;
  }
}

@media(min-width:981px) and (max-width:1320px){
  .hp-public-header{
    height:78px;
    padding:0 max(20px,3vw);
    gap:20px;
  }
  .hp-public-logo-img{
    width:222px;
    max-height:48px;
  }
  .hp-public-nav{
    gap:24px;
  }
  .hp-public-nav a{
    font-size:16px;
  }
}

@media(min-width:981px) and (max-width:1120px){
  .hp-public-header{
    gap:14px;
  }
  .hp-public-logo-img{
    width:198px;
    max-height:44px;
  }
  .hp-public-nav{
    gap:16px;
  }
  .hp-public-nav a{
    font-size:15px;
  }
}

@media(max-width:980px){
  .hp-public-header{
    height:74px;
    min-height:74px;
    padding:0 18px;
    flex-direction:row;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    position:sticky;
    overflow:visible;
  }
  .hp-public-logo-img{
    width:176px;
    max-height:42px;
  }
  .hp-mobile-menu-toggle{
    display:flex;
  }
  .hp-public-nav{
    display:none;
    position:absolute;
    left:12px;
    right:12px;
    top:calc(100% + 6px);
    z-index:90;
    padding:8px;
    border:1px solid #dfe6ef;
    border-radius:14px;
    background:#fff;
    box-shadow:0 16px 38px rgba(31,50,82,.16);
  }
  .hp-public-nav.is-open{
    display:grid !important;
    grid-template-columns:1fr;
    gap:2px;
  }
  .hp-public-nav a{
    display:block;
    padding:13px 14px;
    border-radius:10px;
    font-size:15px;
    line-height:1.25;
    text-align:left;
    white-space:nowrap;
  }
}

/* v11.34 30초 요금제 찾기 정식 메뉴 */
@media(min-width:1321px){.hp-public-nav{gap:28px}}
@media(min-width:981px){.hp-public-nav .hp-finder-link{color:#2463eb;font-weight:900}}
@media(min-width:981px) and (max-width:1180px){.hp-public-nav{gap:13px}.hp-public-nav a{font-size:14px}.hp-public-logo-img{width:188px}}

/* v11.35.2 - 사이트 전체 클릭 가능 요소 인터랙션 강화 */
:where(a[href], button:not(:disabled), summary, [role="button"], [role="link"], .plan-clickable, [data-plan-href]){
  cursor:pointer;
}

:where(a[href], button:not(:disabled), summary, [role="button"], [role="link"], .plan-clickable, [data-plan-href]){
  -webkit-tap-highlight-color:rgba(36,99,235,.12);
}

@media (hover:hover) and (pointer:fine){
  /* 일반 버튼/칩/링크 버튼 */
  :where(
    button:not(:disabled),
    .btn,
    .chip,
    .card-mini-btn,
    .more,
    .detail-link,
    .back-home-btn,
    .compare-now-btn,
    .shared-card-link,
    .cta,
    .sub
  ){
    transition:transform .16s ease, box-shadow .16s ease, border-color .16s ease,
               background-color .16s ease, color .16s ease, opacity .16s ease;
  }

  :where(
    button:not(:disabled),
    .btn,
    .chip,
    .card-mini-btn,
    .more,
    .detail-link,
    .back-home-btn,
    .compare-now-btn,
    .shared-card-link,
    .cta,
    .sub
  ):hover{
    transform:translateY(-2px);
    box-shadow:0 8px 20px rgba(36,99,235,.14);
  }

  /* 카드 전체가 클릭되는 영역 */
  :where(
    a.card,
    a.recommend-card,
    a.hero-mini-card,
    a.landing-card,
    a.highlight-card,
    .plan-clickable,
    [data-plan-href],
    [role="link"].card
  ){
    transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease,
               background-color .18s ease;
  }

  :where(
    a.card,
    a.recommend-card,
    a.hero-mini-card,
    a.landing-card,
    a.highlight-card,
    .plan-clickable,
    [data-plan-href],
    [role="link"].card
  ):hover{
    transform:translateY(-4px);
    border-color:#9dbcfb !important;
    box-shadow:0 14px 32px rgba(31,64,122,.14);
  }

  /* 상단 내비게이션도 클릭 가능성이 즉시 느껴지도록 */
  .hp-public-nav a{
    transition:color .15s ease, background-color .15s ease, transform .15s ease;
  }
  .hp-public-nav a:hover{
    color:#2463eb;
    background:#f1f6ff;
    transform:translateY(-1px);
  }

  /* 텍스트 링크는 색 변화를 분명하게 */
  main a[href]:not(.card):not(.recommend-card):not(.hero-mini-card):not(.landing-card):not(.highlight-card):hover{
    filter:brightness(.82);
  }
}

/* 키보드 접근성: 클릭 가능한 곳을 눈으로도 명확히 표시 */
:where(a[href], button:not(:disabled), summary, [role="button"], [role="link"], .plan-clickable, [data-plan-href]):focus-visible{
  outline:3px solid rgba(36,99,235,.35);
  outline-offset:3px;
}

@media (prefers-reduced-motion:reduce){
  :where(a[href], button, summary, [role="button"], [role="link"], .plan-clickable, [data-plan-href]){
    transition:none !important;
  }
}

/* =========================================================
   v11.36 화면 모드: 밝게 / 심야 / 시스템
   ========================================================= */
.hp-theme-control{position:relative;display:flex;align-items:center}.hp-theme-toggle{border:1px solid #d8e1ed;background:#fff;color:#34445d;border-radius:11px;padding:8px 10px;font:inherit;font-size:13px;font-weight:900;cursor:pointer;display:flex;align-items:center;gap:5px;white-space:nowrap}.hp-theme-toggle:hover{border-color:#91b5fb;color:#2463eb;background:#f5f9ff}.hp-theme-menu{display:none;position:absolute;right:0;top:calc(100% + 10px);min-width:150px;padding:7px;background:#fff;border:1px solid #dfe6ef;border-radius:13px;box-shadow:0 15px 36px rgba(26,43,73,.16);z-index:120}.hp-theme-menu.is-open{display:grid;gap:2px}.hp-theme-menu button{border:0;background:transparent;color:#40506a;text-align:left;border-radius:8px;padding:9px 10px;font:inherit;font-size:13px;font-weight:850;cursor:pointer}.hp-theme-menu button:hover,.hp-theme-menu button.active{background:#edf4ff;color:#2463eb}

html[data-hp-theme="dark"]{color-scheme:dark;background:#0a1020}
html[data-hp-theme="dark"] body{background:#0a1020!important;color:#e7edf8!important}
html[data-hp-theme="dark"] .hp-public-header{background:rgba(12,19,34,.96)!important;border-bottom-color:#25324a!important}
html[data-hp-theme="dark"] .hp-public-nav a{color:#c7d3e6}
html[data-hp-theme="dark"] .hp-public-nav a:hover,html[data-hp-theme="dark"] .hp-public-nav a.active{color:#79a7ff}
html[data-hp-theme="dark"] .hp-mobile-menu-toggle,html[data-hp-theme="dark"] .hp-theme-toggle,html[data-hp-theme="dark"] .hp-theme-menu{background:#111a2d!important;border-color:#2a3954!important;color:#dce6f5!important}
html[data-hp-theme="dark"] .hp-mobile-menu-toggle span{background:#dce6f5}
html[data-hp-theme="dark"] .hp-theme-menu button{color:#d0dbed}
html[data-hp-theme="dark"] .hp-theme-menu button:hover,html[data-hp-theme="dark"] .hp-theme-menu button.active{background:#1c2a45!important;color:#8cb4ff}
html[data-hp-theme="dark"] .hp-public-footer{border-top-color:#26334b!important;color:#8fa0b8!important}
html[data-hp-theme="dark"] .hp-public-footer b,html[data-hp-theme="dark"] .hp-public-footer a{color:#cbd7e9!important}

/* 공개 페이지의 공통 표면. 페이지 고유 포인트색은 유지하고 밝은 배경만 심야톤으로 변환한다. */
html[data-hp-theme="dark"] :is(.card,.box,.panel,.pf-panel,.quality-card,.summary-card,.guide-card,.home-pick,.recommend-card,.how-grid article,.feedback-quick,.recommend-note,.compare-home-cta,.formbox,.benefit-box,.spec,.promo-banner,.rice-card,.rice-toolbar,.rice-guide article,.rice-summary div){background:#111a2d!important;border-color:#283750!important;color:#e6edf8!important;box-shadow:none!important}
html[data-hp-theme="dark"] :is(.hero,.hero-redesign,.recommend-wrap,.rice-wrap,.wrap,.info,.report,.community-wrap){background-color:#0a1020!important}
html[data-hp-theme="dark"] :is(.hero-shell,.hero-phone-screen,.hero-callout,.recommend-hero,.intro,.rice-hero>div:first-child){background:#10192b!important;border-color:#283750!important;color:#e8eef9!important}
html[data-hp-theme="dark"] :is(h1,h2,h3,h4,strong,b,.section-title,.section-head){color:#eef3fb}
html[data-hp-theme="dark"] :is(p,small,.hint,.muted,.lead,.rice-result-head span,.rice-carrier,.rice-data){color:#9eacc1!important}
html[data-hp-theme="dark"] :is(input,select,textarea){background:#0e1728!important;color:#e8eef9!important;border-color:#33435f!important}
html[data-hp-theme="dark"] :is(input,textarea)::placeholder{color:#75849b!important}
html[data-hp-theme="dark"] :is(.chip,.rice-filter-group button,.btn.secondary,.share-action,.tab,.nav-btn){background:#121d31!important;border-color:#31415e!important;color:#cbd7e9!important}
html[data-hp-theme="dark"] :is(.chip,.rice-filter-group button,.btn.secondary,.share-action,.tab,.nav-btn):hover{background:#1a2944!important;border-color:#527fd0!important;color:#91b7ff!important}
html[data-hp-theme="dark"] :is(.loading,.empty,.rice-loading,.rice-empty){background:#10192b!important;border-color:#31405a!important;color:#93a2b9!important}
html[data-hp-theme="dark"] :is(.rice-benefit,.rice-net){background:#0d1728!important;border-color:#293850!important}
html[data-hp-theme="dark"] :is(.rice-benefit-tags span,.rice-badge){background:#1b2940!important;color:#b9c8dc!important}
html[data-hp-theme="dark"] a{outline-color:#79a7ff}

@media(max-width:980px){
  .hp-theme-control{width:100%;display:block;margin-top:3px;border-top:1px solid #edf1f6;padding-top:6px}.hp-theme-toggle{width:100%;justify-content:flex-start;padding:12px 14px}.hp-theme-menu{position:static;box-shadow:none;margin-top:5px;width:100%}.hp-theme-menu.is-open{display:grid;grid-template-columns:repeat(3,1fr)}.hp-theme-menu button{text-align:center;padding:10px 5px}.hp-theme-label{display:inline}
  html[data-hp-theme="dark"] .hp-public-nav{background:#111a2d!important;border-color:#2a3954!important}
  html[data-hp-theme="dark"] .hp-theme-control{border-top-color:#2a3954}
}

/* =========================================================
   v11.36.1 심야모드 가독성 보정
   페이지별 CSS의 흰 표면/짙은 글자가 남아 서로 겹치던 영역을 통일한다.
   ========================================================= */
html[data-hp-theme="dark"] :is(
  .hero-stats,.hero-search,.popular-links a,.cta,.card-spec div,
  .pf-hero,.pf-notice,.pf-tabs button,.quiz-card,.answer-grid button,.balance-choice,
  .purpose-card,.swipe-card,.swipe-spec div,.pf-result,.result-plan,.pf-bottom,.wc-plan,.wc-stage,
  .panel,.bar,.ad,.source,.back-home-btn,.more,.card-mini-btn,.empty,
  .range-shell,.range-box,.dual-range,.dual-range-shell,.dual-range-box
){background:#111a2d!important;border-color:#2d3d59!important;color:#e7edf8!important;box-shadow:none!important}

html[data-hp-theme="dark"] :is(
  .hero-stats b,.hero-stats span,.plan-name,.price,.price small,.card-spec b,.card-spec span,.qos,
  .pf-hero h1,.pf-section-head h2,.quiz-card h3,.answer-grid button,.balance-choice,.purpose-card b,
  .swipe-card h3,.swipe-price,.swipe-spec b,.result-title h3,.result-plan b,.pf-bottom b,
  .wc-plan> b,.wc-plan>strong,.wc-spec span b,.wc-stage-main strong,
  .panel h3,.group b,.checks label,.bar,.value,.label,.detail,.rangeinfo,.filter-note
){color:#e6edf8!important}

html[data-hp-theme="dark"] :is(
  .carrier-name,.after,.pf-hero p,.pf-notice,.pf-section-head p,.quiz-card>p,.purpose-card p,
  .wc-help,.wc-plan>small,.wc-stage-main em,.wc-road span,.result-title p,.result-plan p,.result-plan small,
  .checks label,.prices span,.rangeinfo,.filter-note,.carrier,.detail,.source,.ad
){color:#a8b6ca!important}

html[data-hp-theme="dark"] :is(.card-spec div,.swipe-spec div,.rice-benefit,.rice-net){background:#0d1728!important}
html[data-hp-theme="dark"] :is(.pf-tabs button.active,.rice-filter-group button.active){background:#2463eb!important;border-color:#2463eb!important;color:#fff!important}
html[data-hp-theme="dark"] :is(.wc-stage-friendly,.wc-stage-8강,.wc-stage-4강,.wc-stage-결승){background:#121d31!important}
html[data-hp-theme="dark"] .hero.hero-redesign .hero-stats{background:#10192b!important;border-color:#2d3d59!important}
html[data-hp-theme="dark"] .hero.hero-redesign .hero-stats div{border-color:#2d3d59!important}
html[data-hp-theme="dark"] .card.plan-clickable:hover{background:#16223a!important;border-color:#527fd0!important}
html[data-hp-theme="dark"] .popular-links a:hover{background:#1a2944!important;border-color:#527fd0!important;color:#91b7ff!important}


/* =========================================================
   v11.36.2 심야모드 고대비 가독성 보정
   밝은 카드가 남은 상태에서 전역 글자만 흰색으로 바뀌던 충돌을 해소한다.
   ========================================================= */
html[data-hp-theme="dark"]{
  --hp-dark-bg:#0a1020;
  --hp-dark-surface:#111a2d;
  --hp-dark-surface-2:#0e1728;
  --hp-dark-surface-3:#16223a;
  --hp-dark-line:#30415e;
  --hp-dark-text:#f2f6fc;
  --hp-dark-muted:#b3c0d2;
}
html[data-hp-theme="dark"] :is(
  .feedback-priority-group,.data-slider-box,.price-slider-box,
  .subfilter-box,.quick-result,.quick-compare,.compare-panel,.compare-table-modal,
  .formbox,.resultbar,.compare-card,.specrow div,.cost-metrics>div,.benefit-line,.shared-current,
  .hero-card,.box,.spec,.share-box,.benefit-item,.signup-fallback-note,.detail-ad,
  .result-plan,.swipe-summary span,.wc-plan,.wc-spec span,.wc-champion>span,
  .rice-result-head,.rice-benefit,.rice-card-actions a
){
  background:var(--hp-dark-surface)!important;
  border-color:var(--hp-dark-line)!important;
  color:var(--hp-dark-text)!important;
}
html[data-hp-theme="dark"] :is(
  .data-slider-title,.dual-range-values,.dual-range-caption,.data-range-inputs label,
  .feedback-priority-group>b,.formbox label,.rowcheck,.annual,.specrow small,
  .hero-card .carrier,.box dt,.spec span,.promo-note,.share-box p,.benefit-head p,
  .benefit-copy small,.benefit-note,.domain-footer-hint,.rice-card small
){color:var(--hp-dark-muted)!important}
html[data-hp-theme="dark"] :is(
  .hero-card h1,.hero-card .price,.hero-card .price small,.box h2,.box dd,
  .benefit-head b,.benefit-copy strong,.compare-card h3,.compare-card .price,
  .formbox h2,.resultbar,.feedback-priority-group label,.feedback-priority-group .checks label,
  .subfilter-box label,.subfilter-box b
){color:var(--hp-dark-text)!important}
html[data-hp-theme="dark"] :is(.feedback-priority-group,.data-slider-box,.price-slider-box){box-shadow:inset 0 0 0 1px rgba(130,157,202,.08)!important}
html[data-hp-theme="dark"] :is(.data-range-inputs select,.carrier-select,.bar select){background:var(--hp-dark-surface-2)!important;color:var(--hp-dark-text)!important;border-color:var(--hp-dark-line)!important}
html[data-hp-theme="dark"] .benefit-item{background:#0e1728!important}
html[data-hp-theme="dark"] .benefit-copy em{color:#7fb0ff!important}
html[data-hp-theme="dark"] .share-btn:not(.kakao){background:#16223a!important;color:#e9f0fb!important;border-color:#3a4b68!important}
html[data-hp-theme="dark"] .promo-banner{background:#2a2114!important;border-color:#6c5228!important}
html[data-hp-theme="dark"] .promo-banner b{color:#ffd18b!important}
html[data-hp-theme="dark"] .promo-banner :is(span,small){color:#d8bf97!important}
html[data-hp-theme="dark"] .notice{background:#101f39!important;border-color:#284873!important;color:#c9d7ea!important}
html[data-hp-theme="dark"] .source{background:#101f39!important;color:#c4d2e6!important}
html[data-hp-theme="dark"] .rice-card-actions a{background:#16223a!important;color:#9fc0ff!important}
html[data-hp-theme="dark"] .rice-card-actions a.primary{background:#2463eb!important;color:#fff!important;border-color:#2463eb!important}
html[data-hp-theme="dark"] input[type="checkbox"]{accent-color:#4c86ff}

/* v11.36.2 홈 히어로/남은 밝은 표면도 다크 배경으로 강제 통일 */
html[data-hp-theme="dark"] :is(.hero,.hero.hero-redesign){background:#0a1020!important;background-image:none!important}
html[data-hp-theme="dark"] :is(
  .hero-mini-card,.hero-search,.hero-stat,.hero-feature,.hero-phone-screen,
  .hero-finder-cta,.hero-quick-card,.hero-floating-lte,.home-pick,.popular-links a
){background:#111a2d!important;border-color:#30415e!important;color:#f2f6fc!important}
html[data-hp-theme="dark"] :is(.hero-mini-card,.hero-phone-screen) :is(b,strong,h3,span,p){color:#e7eef9!important}
html[data-hp-theme="dark"] .hero-search input{color:#f2f6fc!important;background:transparent!important}
html[data-hp-theme="dark"] .hero-search input::placeholder{color:#8d9cb1!important}
html[data-hp-theme="dark"] .hero-floating-lte{color:#e7eef9!important}

/* =========================================================
   v11.37 심야모드 로고 가독성 + 잔여 밝은 카드 대비 보강
   ========================================================= */
html[data-hp-theme="dark"] .hp-public-logo{
  background:rgba(255,255,255,.96);
  border:1px solid rgba(255,255,255,.88);
  border-radius:12px;
  padding:5px 9px;
  box-shadow:0 4px 14px rgba(0,0,0,.22);
}
html[data-hp-theme="dark"] .hp-public-logo-img{
  filter:saturate(1.12) contrast(1.04);
}

/* 개별 페이지 CSS가 흰 배경을 강제로 주는 경우에도 글자와 함께 어두워지도록 마지막 안전장치 */
html[data-hp-theme="dark"] :is(
  .filter-box,.filter-group,.filter-section,.range-box,.slider-box,
  .compare-card,.compare-result,.compare-summary,.current-plan-card,
  .detail-card,.plan-detail-card,.detail-summary,.benefit-item,
  .pf-question,.pf-answer,.pf-result,.pf-result-card,.finder-card,
  .rice-card,.rice-benefit,.rice-net,.share-box,.share-panel
){
  background:#111a2d!important;
  border-color:#30415e!important;
  color:#f2f6fc!important;
}
html[data-hp-theme="dark"] :is(
  .filter-box,.filter-group,.filter-section,.range-box,.slider-box,
  .compare-card,.compare-result,.compare-summary,.current-plan-card,
  .detail-card,.plan-detail-card,.detail-summary,.benefit-item,
  .pf-question,.pf-answer,.pf-result,.pf-result-card,.finder-card,
  .rice-card,.rice-benefit,.rice-net,.share-box,.share-panel
) :is(h1,h2,h3,h4,b,strong,label,span:not(.badge):not(.chip),p,small,em){
  color:inherit;
}
html[data-hp-theme="dark"] :is(.filter-box,.filter-group,.filter-section,.compare-card,.detail-card,.plan-detail-card,.pf-question,.pf-result-card,.rice-card) :is(p,small,.muted,.hint){
  color:#b3c0d2!important;
}

@media(max-width:980px){
  html[data-hp-theme="dark"] .hp-public-logo{padding:4px 7px;border-radius:10px}
}

/* =========================================================
   v11.37.2 다크 히어로 가독성 + 통신망 색상 구분
   ========================================================= */
/* 통신망은 사이트 전역에서 같은 색을 사용해 한눈에 구분한다. */
.hp-network-badge{
  border:1px solid transparent!important;
  font-weight:900!important;
  transition:transform .16s ease,box-shadow .16s ease,background .16s ease!important;
}
/* v11.37.3 - 각 이동통신사 브랜드 아이덴티티에 맞춘 망 배지 컬러 */
/* SKT: T 브랜드의 오렌지/레드 계열 */
.hp-network-skt{background:#fff1e9!important;color:#e84a1b!important;border-color:#f7a27e!important}
/* KT: KT Red */
.hp-network-kt{background:#fff0f1!important;color:#e60012!important;border-color:#f6a0a8!important}
/* LG U+: U+ 마젠타 */
.hp-network-lgu{background:#fff0f8!important;color:#e6007e!important;border-color:#f29ac8!important}
.hp-network-badge:hover{transform:translateY(-1px);box-shadow:0 6px 16px rgba(30,45,75,.10)}

html[data-hp-theme="dark"] .hp-network-skt{background:#3a2118!important;color:#ff9a63!important;border-color:#8d4b2f!important}
html[data-hp-theme="dark"] .hp-network-kt{background:#3a171b!important;color:#ff6f79!important;border-color:#8b3038!important}
html[data-hp-theme="dark"] .hp-network-lgu{background:#3b1730!important;color:#ff72b9!important;border-color:#8c3568!important}

/* 메인 히어로 내부 로고는 어두운 글자색이 묻히지 않도록 전용 밝은 판 위에 표시 */
html[data-hp-theme="dark"] .hero-visual-logo{
  background:#f8fbff!important;
  border:1px solid #d8e5f7!important;
  border-radius:15px!important;
  padding:9px 13px!important;
  box-shadow:0 7px 18px rgba(0,0,0,.18)!important;
  box-sizing:content-box!important;
}
/* 추천 1/2/3 라벨이 흰 박스 위에서 사라지지 않게 고정 대비 */
html[data-hp-theme="dark"] .hero-mini-card span{
  background:#eaf2ff!important;
  color:#1f63e9!important;
  border:1px solid #c9dcff!important;
}
html[data-hp-theme="dark"] .hero-mini-card b{color:#f2f6fc!important}
html[data-hp-theme="dark"] .hero-mini-card small{color:#aebbd0!important}
html[data-hp-theme="dark"] .hero-mini-card i{color:#89a7d1!important}

/* v11.39 global limited-event badge */
.benefit-mini-event{background:#fff0e7!important;color:#bd4d08!important;border:1px solid #ffd0b3!important;font-weight:900!important}
html[data-hp-theme="dark"] .benefit-mini-event{background:#3a2114!important;color:#ffbd8f!important;border-color:#744326!important}

/* =========================================================
   v11.42.9 요금제 카드 통신망/통신세대 전역 배지 통일
   ========================================================= */
/* 카드 안에서는 통신망 퍼스널 컬러가 각 페이지의 회색/파랑 기본 배지보다 우선한다. */
:is(.card,.landing-card,.rice-card,.plan-card,.compare-card,.current-plan-card,.pf-result-card,.share-box,.detail-card,.wc-plan) .hp-network-badge{
  border-radius:999px!important;
  padding:0 11px!important;
  min-height:28px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  font-size:12px!important;
  line-height:1!important;
  font-weight:900!important;
  box-shadow:none!important;
}
:is(.card,.landing-card,.rice-card,.plan-card,.compare-card,.current-plan-card,.pf-result-card,.share-box,.detail-card,.wc-plan) .hp-network-skt{
  background:#fff1e9!important;color:#e84a1b!important;border:1px solid #f7a27e!important;
}
:is(.card,.landing-card,.rice-card,.plan-card,.compare-card,.current-plan-card,.pf-result-card,.share-box,.detail-card,.wc-plan) .hp-network-kt{
  background:#fff0f1!important;color:#e60012!important;border:1px solid #f6a0a8!important;
}
:is(.card,.landing-card,.rice-card,.plan-card,.compare-card,.current-plan-card,.pf-result-card,.share-box,.detail-card,.wc-plan) .hp-network-lgu{
  background:#fff0f8!important;color:#e6007e!important;border:1px solid #f29ac8!important;
}

/* 5G는 어두운 카드 배경과 섞이지 않도록 밝은 블루-바이올렛 배지로 분리. */
.hp-tech-badge{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:42px!important;
  min-height:28px!important;
  padding:0 11px!important;
  border-radius:999px!important;
  font-size:12px!important;
  font-weight:950!important;
  line-height:1!important;
  letter-spacing:.02em!important;
}
.hp-tech-5g{
  background:#e8edff!important;
  color:#3f46d8!important;
  border:1px solid #aab4ff!important;
  box-shadow:0 0 0 2px rgba(84,92,230,.08)!important;
}
.hp-tech-lte{
  background:#eef3f9!important;
  color:#52647d!important;
  border:1px solid #cbd6e5!important;
}
.hp-tech-3g{
  background:#fff2e3!important;
  color:#ad5c10!important;
  border:1px solid #efc58d!important;
}
html[data-hp-theme="dark"] :is(.card,.landing-card,.rice-card,.plan-card,.compare-card,.current-plan-card,.pf-result-card,.share-box,.detail-card,.wc-plan) .hp-network-skt{
  background:#3a2118!important;color:#ff9a63!important;border-color:#8d4b2f!important;
}
html[data-hp-theme="dark"] :is(.card,.landing-card,.rice-card,.plan-card,.compare-card,.current-plan-card,.pf-result-card,.share-box,.detail-card,.wc-plan) .hp-network-kt{
  background:#3a171b!important;color:#ff6f79!important;border-color:#8b3038!important;
}
html[data-hp-theme="dark"] :is(.card,.landing-card,.rice-card,.plan-card,.compare-card,.current-plan-card,.pf-result-card,.share-box,.detail-card,.wc-plan) .hp-network-lgu{
  background:#3b1730!important;color:#ff72b9!important;border-color:#8c3568!important;
}
html[data-hp-theme="dark"] .hp-tech-5g{
  background:#28306d!important;color:#dce1ff!important;border-color:#737ff2!important;
  box-shadow:0 0 0 2px rgba(123,135,255,.16)!important;
}
html[data-hp-theme="dark"] .hp-tech-lte{
  background:#202b3d!important;color:#c5d2e3!important;border-color:#465774!important;
}
html[data-hp-theme="dark"] .hp-tech-3g{
  background:#3b2b18!important;color:#ffc57f!important;border-color:#76532a!important;
}

/* =========================================================
   v11.42.13 심야모드 듀얼 범위 슬라이더 가시성 보정
   - 가격/데이터 범위 막대 대비 강화
   - 최소/최대 손잡이를 동일한 밝은 파랑으로 통일
   - 최소 손잡이가 끝점에서 묻히지 않도록 명시적 stacking/outline 적용
   ========================================================= */
html[data-hp-theme="dark"] .dual-range-control{
  isolation:isolate;
}
html[data-hp-theme="dark"] .dual-range-track{
  background:#3a4a66!important;
  box-shadow:inset 0 0 0 1px rgba(173,197,235,.16)!important;
}
html[data-hp-theme="dark"] .dual-range-fill{
  background:#3478f6!important;
  box-shadow:0 0 0 1px rgba(91,146,255,.18),0 0 10px rgba(52,120,246,.18)!important;
}
html[data-hp-theme="dark"] .dual-range-input{
  opacity:1!important;
  filter:none!important;
}
html[data-hp-theme="dark"] #priceMinRange,
html[data-hp-theme="dark"] #dataMinRange{
  z-index:4!important;
}
html[data-hp-theme="dark"] #range,
html[data-hp-theme="dark"] #dataRange{
  z-index:5!important;
}
html[data-hp-theme="dark"] .dual-range-input::-webkit-slider-thumb{
  width:22px!important;
  height:22px!important;
  margin-top:-8px!important;
  border:3px solid #b8d0ff!important;
  border-radius:50%!important;
  background:#3478f6!important;
  box-shadow:0 0 0 2px rgba(9,16,32,.9),0 2px 8px rgba(52,120,246,.5)!important;
  opacity:1!important;
}
html[data-hp-theme="dark"] .dual-range-input::-moz-range-thumb{
  width:16px!important;
  height:16px!important;
  border:3px solid #b8d0ff!important;
  border-radius:50%!important;
  background:#3478f6!important;
  box-shadow:0 0 0 2px rgba(9,16,32,.9),0 2px 8px rgba(52,120,246,.5)!important;
  opacity:1!important;
}
html[data-hp-theme="dark"] .dual-range-caption{
  color:#c7d4e8!important;
}

/* =========================================================
   v11.42.15 심야모드 듀얼 범위 슬라이더 표시 FIX
   - 전역 dark input 배경이 range input을 덮어 custom track/fill과 최소 thumb를 가리던 문제 수정
   - range input 자체는 완전 투명화하고 실제 track/fill은 더 밝고 두껍게 표시
   ========================================================= */
html[data-hp-theme="dark"] .dual-range-control{
  overflow:visible!important;
  isolation:isolate;
}
html[data-hp-theme="dark"] .dual-range-track,
html[data-hp-theme="dark"] .dual-range-fill{
  top:11px!important;
  height:8px!important;
  border-radius:999px!important;
}
html[data-hp-theme="dark"] .dual-range-track{
  background:#526987!important;
  box-shadow:inset 0 0 0 1px rgba(214,226,245,.24),0 1px 4px rgba(0,0,0,.28)!important;
}
html[data-hp-theme="dark"] .dual-range-fill{
  background:#3b82f6!important;
  box-shadow:0 0 0 1px rgba(131,178,255,.30),0 0 12px rgba(59,130,246,.32)!important;
}
html[data-hp-theme="dark"] input.dual-range-input{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  outline-offset:4px;
  overflow:visible!important;
  opacity:1!important;
  filter:none!important;
}
html[data-hp-theme="dark"] input.dual-range-input::-webkit-slider-runnable-track{
  height:8px!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
html[data-hp-theme="dark"] input.dual-range-input::-webkit-slider-thumb{
  width:24px!important;
  height:24px!important;
  margin-top:-8px!important;
  border:3px solid #d5e5ff!important;
  border-radius:50%!important;
  background:#3b82f6!important;
  box-shadow:0 0 0 2px #0a1020,0 2px 9px rgba(59,130,246,.65)!important;
  opacity:1!important;
}
html[data-hp-theme="dark"] input.dual-range-input::-moz-range-track{
  height:8px!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
html[data-hp-theme="dark"] input.dual-range-input::-moz-range-thumb{
  width:18px!important;
  height:18px!important;
  border:3px solid #d5e5ff!important;
  border-radius:50%!important;
  background:#3b82f6!important;
  box-shadow:0 0 0 2px #0a1020,0 2px 9px rgba(59,130,246,.65)!important;
  opacity:1!important;
}


/* v11.42.17 plans range compact override (public_header loads after plans css) */
html[data-hp-theme="dark"] .range-filter-group .dual-range-control{
  height:22px!important;
  margin:0 4px!important;
}
html[data-hp-theme="dark"] .range-filter-group .dual-range-track,
html[data-hp-theme="dark"] .range-filter-group .dual-range-fill{
  top:8px!important;
  height:6px!important;
}
html[data-hp-theme="dark"] .range-filter-group input.dual-range-input{
  height:22px!important;
}
html[data-hp-theme="dark"] .range-filter-group input.dual-range-input::-webkit-slider-runnable-track{
  height:6px!important;
}
html[data-hp-theme="dark"] .range-filter-group input.dual-range-input::-webkit-slider-thumb{
  width:18px!important;
  height:18px!important;
  margin-top:-6px!important;
  border:2px solid #d5e5ff!important;
  box-shadow:0 0 0 1px #0a1020,0 1px 5px rgba(59,130,246,.55)!important;
}
html[data-hp-theme="dark"] .range-filter-group input.dual-range-input::-moz-range-track{
  height:6px!important;
}
html[data-hp-theme="dark"] .range-filter-group input.dual-range-input::-moz-range-thumb{
  width:16px!important;
  height:16px!important;
  border:2px solid #d5e5ff!important;
  box-shadow:0 0 0 1px #0a1020,0 1px 5px rgba(59,130,246,.55)!important;
}


/* =========================================================
   v11.42.19 비교/공유/커뮤니티 심야모드 대비 보정
   밝은 페이지 고유 표면이 심야모드의 밝은 글자와 충돌하던 영역을 통일한다.
   ========================================================= */
html[data-hp-theme="dark"] .modal-overlay{
  background:rgba(2,8,20,.72)!important;
}
html[data-hp-theme="dark"] :is(.modal-card,.modal-head,.compare-table-modal){
  background:#111a2d!important;
  border-color:#30415e!important;
  color:#f2f6fc!important;
  box-shadow:0 24px 80px rgba(0,0,0,.48)!important;
}
html[data-hp-theme="dark"] .modal-head{
  border-bottom-color:#30415e!important;
}
html[data-hp-theme="dark"] .modal-head :is(b,p){color:#f2f6fc!important}
html[data-hp-theme="dark"] .modal-head p{color:#b3c0d2!important}
html[data-hp-theme="dark"] .modal-close{
  background:#16223a!important;
  border-color:#3a4b68!important;
  color:#eaf1fb!important;
}
html[data-hp-theme="dark"] .modal-close:hover{
  background:#1d2d49!important;
  border-color:#5a83c7!important;
}
html[data-hp-theme="dark"] .share-grid{
  background:#111a2d!important;
}
html[data-hp-theme="dark"] .share-action:not(.kakao){
  background:#16223a!important;
  border-color:#3a4b68!important;
  color:#eaf1fb!important;
}
html[data-hp-theme="dark"] .share-action:not(.kakao):hover{
  background:#1d2d49!important;
  border-color:#5a83c7!important;
  color:#fff!important;
}
html[data-hp-theme="dark"] .share-action.preview{color:#91b7ff!important}
html[data-hp-theme="dark"] .share-modal-status{color:#8cb4ff!important}
html[data-hp-theme="dark"] .share-preview-wrap{
  background:#0d1728!important;
  border-top:1px solid #2d3d59!important;
}
html[data-hp-theme="dark"] .share-preview-wrap img{
  border-color:#3a4b68!important;
  background:#fff!important;
}
html[data-hp-theme="dark"] .compare-table-wrap{
  background:#111a2d!important;
  color:#eef3fb!important;
}
html[data-hp-theme="dark"] .compare-table-wrap table{
  background:#111a2d!important;
  color:#eef3fb!important;
}
html[data-hp-theme="dark"] .compare-table-wrap :is(th,td){
  background:#111a2d!important;
  border-bottom-color:#34445f!important;
  color:#e9f0fb!important;
}
html[data-hp-theme="dark"] .compare-table-wrap th{
  background:#16223a!important;
  color:#dce7f7!important;
}
html[data-hp-theme="dark"] .compare-table-wrap td:first-child{
  background:#0e1728!important;
  color:#aebdd1!important;
}
html[data-hp-theme="dark"] .compare-table-wrap tr:nth-child(4),
html[data-hp-theme="dark"] .compare-table-wrap tr:nth-child(6){
  background:#111a2d!important;
}
html[data-hp-theme="dark"] .compare-table-wrap td.compare-best{
  background:#123429!important;
  color:#73e0b5!important;
}
html[data-hp-theme="dark"] .best-mark{
  background:#184739!important;
  color:#89edc7!important;
}
html[data-hp-theme="dark"] .compare-detail-btn{
  background:#16223a!important;
  border-color:#3a4b68!important;
  color:#8fb6ff!important;
}
html[data-hp-theme="dark"] .compare-detail-btn:hover{
  background:#1d2d49!important;
  border-color:#5a83c7!important;
}

/* 공개 커뮤니티: 목록 / 게시글 / 댓글 / 작성·수정 */
html[data-hp-theme="dark"] body.community-page{
  background:#0a1020!important;
  color:#e7edf8!important;
}
html[data-hp-theme="dark"] .community-page :is(.board,.comments,.neighbors a,.report-box){
  background:#111a2d!important;
  border-color:#30415e!important;
  color:#e9f0fb!important;
  box-shadow:none!important;
}
html[data-hp-theme="dark"] .community-page .row{
  background:#111a2d!important;
  border-bottom-color:#30415e!important;
  color:#e2eaf7!important;
}
html[data-hp-theme="dark"] .community-page .row.header{
  background:#16223a!important;
  color:#b8c6d9!important;
}
html[data-hp-theme="dark"] .community-page .row.is-notice{
  background:#1d2130!important;
}
html[data-hp-theme="dark"] .community-page .row.is-pinned{
  background:#191d31!important;
}
html[data-hp-theme="dark"] .community-page .title a{
  color:#edf3fc!important;
}
html[data-hp-theme="dark"] .community-page .title a:hover{
  color:#8cb4ff!important;
}
html[data-hp-theme="dark"] .community-page :is(.muted,.head p,.meta,.comment-head,.report-box summary,.hint,.box p){
  color:#aab8cb!important;
}
html[data-hp-theme="dark"] .community-page .comment-author{
  color:#eef4fd!important;
}
html[data-hp-theme="dark"] .community-page .comment-content,
html[data-hp-theme="dark"] .community-page .content{
  color:#e7eef9!important;
}
html[data-hp-theme="dark"] .community-page :is(.tabs a,.pager a,.btn:not(.primary):not(.danger),.actions a){
  background:#16223a!important;
  border-color:#3a4b68!important;
  color:#dce7f7!important;
}
html[data-hp-theme="dark"] .community-page :is(.tabs a,.pager a):hover{
  background:#1d2d49!important;
  border-color:#5a83c7!important;
  color:#fff!important;
}
html[data-hp-theme="dark"] .community-page :is(.tabs a.on,.pager a.on){
  background:#2463eb!important;
  border-color:#2463eb!important;
  color:#fff!important;
}
html[data-hp-theme="dark"] .community-page .write{
  background:#2463eb!important;
  color:#fff!important;
}
html[data-hp-theme="dark"] .community-page :is(.controls,.comment,.comment-form){
  border-color:#30415e!important;
}
html[data-hp-theme="dark"] .community-page .report-form button{
  background:#1a2740!important;
  color:#dbe6f6!important;
}
html[data-hp-theme="dark"] .community-page .flash.ok{
  background:#123429!important;
  color:#83e8bf!important;
}
html[data-hp-theme="dark"] .community-page .flash.err,
html[data-hp-theme="dark"] .community-page .error{
  background:#3a1b22!important;
  color:#ffb4bd!important;
}
html[data-hp-theme="dark"] .community-page .gallery a{
  background:#0e1728!important;
  border-color:#30415e!important;
}


/* =========================================================
   v11.42.22 해외유심/로밍 메뉴 추가 시 PC 헤더 잘림 방지
   기존 글씨 크기/hover 스타일은 그대로 두고 중간 폭에서 간격만 압축한다.
   ========================================================= */
@media(min-width:1321px) and (max-width:1650px){
  .hp-public-header{padding:0 max(22px,2.5vw);gap:20px}
  .hp-public-logo-img{width:230px;max-height:52px}
  .hp-public-nav{gap:18px}
  .hp-theme-toggle{font-size:12px;padding:7px 8px}
}
@media(min-width:1181px) and (max-width:1320px){
  .hp-public-nav{gap:12px}
  .hp-public-logo-img{width:198px}
}

/* =========================================================
   v11.42.30 PC 상단 메뉴 콘텐츠 폭 제한
   해외상품/요금제 본문(1180px)보다 조금 넓은 1320px을 기준으로
   로고와 메뉴가 초광폭 화면 양끝으로 과도하게 벌어지지 않게 한다.
   헤더 배경은 전체 폭을 유지한다.
   ========================================================= */
@media(min-width:981px){
  .hp-public-header{
    padding-left:max(24px,calc((100vw - 1320px)/2))!important;
    padding-right:max(24px,calc((100vw - 1320px)/2))!important;
  }
}

