@charset "utf-8";

/* ===== MEGAVPN SERVICE DETAIL 2026 ===== */

body:has(.mvpn-product-page) #wrapper,
body:has(.mvpn-product-page) #container,
body:has(.mvpn-product-page) .shop-content.is_item {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.mvpn-structured-options {
    margin-bottom: 18px;
}

.mvpn-structured-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}

.mvpn-structured-grid label {
    display: flex;
    flex-direction: column;
    gap: 7px;
    min-width: 0;
    color: #52647a;
    font-size: 13px;
    font-weight: 700;
}

.mvpn-structured-grid select {
    width: 100%;
    height: 44px;
    border: 1px solid #cbd7e5;
    border-radius: 6px;
    background: #fff;
    color: #172336;
    font-size: 14px;
    font-weight: 700;
}

.mvpn-structured-summary,
.mvpn-structured-selected {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    margin-top: 14px;
    padding: 14px 16px;
    border: 1px solid #d8e1ec;
    border-radius: 6px;
    background: #f8fbff;
}

.mvpn-structured-selected > div {
    flex: 1 1 auto;
    min-width: 0;
}

.mvpn-structured-summary span,
.mvpn-structured-selected span {
    display: block;
    color: #65768c;
    font-size: 13px;
    font-weight: 700;
}

.mvpn-structured-summary strong,
.mvpn-structured-selected strong {
    color: #172336;
    font-size: 18px;
    font-weight: 800;
}

.mvpn-selected-config {
    display: inline-flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 4px 8px;
    max-width: 100%;
    line-height: 1.45;
    word-break: keep-all;
}

.mvpn-selected-config span {
    display: inline-block;
    color: inherit;
    font-size: inherit;
    font-weight: inherit;
    white-space: nowrap;
}

.mvpn-selected-config b {
    color: #9aa8b8;
    font-weight: 700;
}

.mvpn-structured-selected small {
    color: #65768c;
    font-size: 12px;
    text-align: right;
    flex: 0 0 auto;
    max-width: 180px;
}

.mvpn-structured-error {
    min-height: 20px;
    margin: 10px 0 0;
    color: #b42318;
    font-size: 13px;
    font-weight: 700;
}

@media (max-width: 720px) {
    .mvpn-structured-grid {
        grid-template-columns: 1fr;
    }

    .mvpn-structured-summary,
    .mvpn-structured-selected {
        align-items: flex-start;
        flex-direction: column;
    }

    .mvpn-structured-selected small {
        text-align: left;
        max-width: none;
    }
}

@media (max-width: 420px) {
    .mvpn-selected-config span {
        white-space: normal;
    }
}

body:has(.mvpn-product-page) #wrapper {
    background: #f4f7fb;
}

body:has(.mvpn-product-page) #wrapper_title,
body:has(.mvpn-product-page) #container_title,
body:has(.mvpn-product-page) #text_size,
body:has(.mvpn-product-page) #sct_location,
body:has(.mvpn-product-page) .sct_ct,
body:has(.mvpn-product-page) #sit_siblings,
body:has(.mvpn-product-page) #sit_info,
body:has(.mvpn-product-page) #sit_rel {
    display: none !important;
}

.mvpn-product-page {
    width: 100%;
    padding: 46px 0 95px;
    color: #172941;
    background:
        radial-gradient(circle at 86% 5%, rgba(37, 117, 235, 0.08), transparent 27%),
        #f4f7fb;
}

.mvpn-product-nav {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: min(1180px, calc(100% - 64px));
    margin: 0 auto 20px;
}

.mvpn-product-nav a,
.mvpn-product-nav span {
    color: #74839a;
    font-size: 13px;
    font-weight: 750;
}

.mvpn-product-nav a {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    text-decoration: none;
}

.mvpn-product-nav a:hover {
    color: #176bea;
}

.mvpn-product-layout {
    display: grid;
    grid-template-columns: minmax(0, 0.88fr) minmax(500px, 1.12fr);
    width: min(1180px, calc(100% - 64px));
    margin: 0 auto;
    overflow: hidden;
    border: 1px solid #dce5f0;
    border-radius: 26px;
    background: #ffffff;
    box-shadow:
        0 30px 80px rgba(10, 38, 78, 0.13),
        0 6px 22px rgba(25, 63, 115, 0.06);
}

.mvpn-product-summary {
    position: relative;
    overflow: hidden;
    color: #ffffff;
    background:
        radial-gradient(circle at 15% 10%, rgba(45, 139, 255, 0.32), transparent 30%),
        radial-gradient(circle at 94% 92%, rgba(0, 188, 255, 0.17), transparent 32%),
        linear-gradient(145deg, #020b1d, #082653 100%);
}

.mvpn-product-summary::before {
    position: absolute;
    inset: 0;
    content: "";
    opacity: 0.4;
    background-image:
        linear-gradient(rgba(101, 165, 255, 0.07) 1px, transparent 1px),
        linear-gradient(90deg, rgba(101, 165, 255, 0.07) 1px, transparent 1px);
    background-size: 47px 47px;
}

.mvpn-product-summary::after {
    position: absolute;
    right: -170px;
    bottom: -170px;
    width: 410px;
    height: 410px;
    content: "";
    border: 1px solid rgba(89, 168, 255, 0.15);
    border-radius: 50%;
    box-shadow:
        0 0 0 50px rgba(66, 148, 255, 0.035),
        0 0 0 105px rgba(66, 148, 255, 0.025);
}

.mvpn-product-summary-inner {
    position: relative;
    z-index: 2;
    padding: 48px 45px;
}

.mvpn-product-status {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 32px;
    color: #8fc5ff;
    font-size: 10px;
    font-weight: 850;
    letter-spacing: 0.14em;
}

.mvpn-product-status span {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #45d9a0;
    box-shadow: 0 0 0 6px rgba(69, 217, 160, 0.11);
}

.mvpn-product-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 62px;
    height: 62px;
    margin-bottom: 27px;
    color: #75b9ff;
    font-size: 25px;
    border: 1px solid rgba(108, 180, 255, 0.24);
    border-radius: 18px;
    background: rgba(39, 126, 242, 0.13);
}

.mvpn-product-label {
    display: block;
    margin-bottom: 7px;
    color: #7292b9;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.15em;
}

.mvpn-product-summary h1 {
    margin: 0;
    color: #ffffff;
    font-size: 43px;
    font-weight: 850;
    line-height: 1.25;
    letter-spacing: -0.05em;
}

.mvpn-product-description {
    margin: 17px 0 0;
    color: #b4c5dc;
    font-size: 14px;
    line-height: 1.8;
    word-break: keep-all;
}

.mvpn-product-price {
    margin: 31px 0 27px;
    padding: 23px 0;
    border-top: 1px solid rgba(152, 190, 239, 0.15);
    border-bottom: 1px solid rgba(152, 190, 239, 0.15);
}

.mvpn-product-price span,
.mvpn-product-price strong,
.mvpn-product-price small {
    display: block;
}

.mvpn-product-price span {
    margin-bottom: 6px;
    color: #829abb;
    font-size: 11px;
    font-weight: 700;
}

.mvpn-product-price strong {
    color: #ffffff;
    font-size: 30px;
    font-weight: 850;
}

.mvpn-product-price small {
    margin-top: 7px;
    color: #7189a8;
    font-size: 11px;
    line-height: 1.6;
}

.mvpn-product-spec-title {
    margin-bottom: 13px;
    color: #dbe9fa;
    font-size: 13px;
    font-weight: 850;
}

.mvpn-product-specs {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 9px;
    margin: 0;
}

.mvpn-product-specs > div {
    min-height: 66px;
    padding: 13px 14px;
    border: 1px solid rgba(129, 183, 251, 0.13);
    border-radius: 11px;
    background: rgba(255, 255, 255, 0.035);
}

.mvpn-product-specs dt {
    margin-bottom: 5px;
    color: #7891b1;
    font-size: 10px;
    font-weight: 700;
}

.mvpn-product-specs dd {
    margin: 0;
    color: #f2f7fd;
    font-size: 13px;
    font-weight: 800;
}

.mvpn-product-safe {
    display: flex;
    align-items: center;
    gap: 13px;
    margin-top: 27px;
    padding: 16px;
    border: 1px solid rgba(76, 221, 166, 0.14);
    border-radius: 11px;
    background: rgba(31, 184, 128, 0.055);
}

.mvpn-product-safe > i {
    color: #48d9a2;
    font-size: 17px;
}

.mvpn-product-safe strong,
.mvpn-product-safe span {
    display: block;
}

.mvpn-product-safe strong {
    margin-bottom: 3px;
    color: #e9fff7;
    font-size: 12px;
}

.mvpn-product-safe span {
    color: #82a49a;
    font-size: 10px;
    line-height: 1.6;
}

.mvpn-order-panel {
    padding: 48px 46px;
    background:
        radial-gradient(circle at 100% 0, rgba(45, 126, 240, 0.055), transparent 29%),
        #ffffff;
}

.mvpn-order-heading > span {
    display: block;
    margin-bottom: 9px;
    color: #2677ed;
    font-size: 10px;
    font-weight: 850;
    letter-spacing: 0.15em;
}

.mvpn-order-heading h2 {
    margin: 0;
    color: #14243c;
    font-size: 29px;
    font-weight: 850;
    letter-spacing: -0.045em;
}

.mvpn-order-heading p {
    margin: 10px 0 0;
    color: #74839a;
    font-size: 13px;
    line-height: 1.7;
}

.mvpn-order-steps {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    margin: 27px 0;
    padding: 0;
    overflow: hidden;
    list-style: none;
    border: 1px solid #e0e7f0;
    border-radius: 10px;
    background: #f7f9fc;
}

.mvpn-order-steps li {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    min-height: 45px;
    color: #8a98aa;
    font-size: 11px;
    font-weight: 800;
    border-right: 1px solid #e0e7f0;
}

.mvpn-order-steps li:last-child {
    border-right: 0;
}

.mvpn-order-steps li span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 19px;
    height: 19px;
    border-radius: 50%;
    background: #e5eaf1;
}

.mvpn-order-steps li.active {
    color: #176bea;
    background: #eef5ff;
}

.mvpn-order-steps li.active span {
    color: #ffffff;
    background: #2677ed;
}

.mvpn-choice-box,
.mvpn-selected-options {
    margin-bottom: 16px;
    overflow: hidden;
    border: 1px solid #dee6f0;
    border-radius: 13px;
    background: #ffffff;
}

.mvpn-choice-box > header,
.mvpn-selected-options > header {
    display: flex;
    align-items: center;
    gap: 13px;
    padding: 17px 19px;
    border-bottom: 1px solid #e4eaf2;
    background: #f7f9fc;
}

.mvpn-choice-number {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 34px;
    width: 34px;
    height: 34px;
    color: #176bea;
    font-size: 10px;
    font-weight: 850;
    border: 1px solid #c7dcfa;
    border-radius: 10px;
    background: #edf5ff;
}

.mvpn-choice-box h3,
.mvpn-selected-options h3 {
    margin: 0;
    color: #20344e;
    font-size: 14px;
    font-weight: 850;
}

.mvpn-choice-box header p,
.mvpn-selected-options header p {
    margin: 3px 0 0;
    color: #8996a8;
    font-size: 10px;
}

.mvpn-choice-content {
    padding: 18px 19px 9px;
}

.mvpn-choice-content table {
    width: 100%;
    border-collapse: collapse;
}

.mvpn-choice-content th,
.mvpn-choice-content td {
    padding: 0 0 10px;
    text-align: left;
    border: 0;
}

.mvpn-choice-content th {
    width: 110px;
    padding-right: 12px;
    color: #42566f;
    font-size: 12px;
    font-weight: 800;
}

.mvpn-choice-content label {
    display: block;
    margin-bottom: 7px;
    color: #42566f;
    font-size: 12px;
    font-weight: 800;
}

.mvpn-choice-content select {
    width: 100% !important;
    height: 50px !important;
    margin: 0 0 9px !important;
    padding: 0 42px 0 14px !important;
    color: #354a64;
    font-size: 13px;
    border: 1px solid #d3ddea !important;
    border-radius: 9px !important;
    outline: none;
    background-color: #ffffff !important;
}

.mvpn-choice-content select:focus {
    border-color: #3987f6 !important;
    box-shadow: 0 0 0 4px rgba(49, 128, 244, 0.09);
}

.mvpn-choice-content .sit_sel_btn {
    position: static !important;
    margin-bottom: 9px;
}

.mvpn-choice-content .sit_sel_btn button {
    position: static !important;
    width: 100%;
    height: 43px;
    color: #176bea;
    font-size: 12px;
    font-weight: 800;
    border: 1px solid #b9d3f8;
    border-radius: 8px;
    background: #eef6ff;
}

/* ===== MEGAVPN NATIVE OPTION UI FINAL ===== */

/*
 * 영카트 원본 DOM은 변경하지 않습니다.
 *
 * 실제 DOM:
 * 감소 → 수량 → 증가 → 삭제
 *
 * 화면 표시:
 * 수량 → 증가 → 감소
 */

.mvpn-product-page
#sit_sel_option
#sit_opt_added {
    margin: 0 !important;
    padding: 14px 16px !important;
    list-style: none !important;
}

/* 기간 선택옵션 및 추가옵션 공통 카드 */
.mvpn-product-page
#sit_sel_option
#sit_opt_added
> li.sit_opt_list,
.mvpn-product-page
#sit_sel_option
#sit_opt_added
> li.sit_spl_list {
    position: relative !important;
    display: block !important;

    width: 100% !important;
    min-height: 84px !important;

    margin: 0 0 10px !important;
    padding: 14px !important;

    overflow: visible !important;

    border: 1px solid #d8e2ee !important;
    border-radius: 10px !important;
    background: #ffffff !important;

    box-sizing: border-box !important;
    float: none !important;
    clear: both !important;
}

.mvpn-product-page
#sit_sel_option
#sit_opt_added
> li:last-child {
    margin-bottom: 0 !important;
}

/* 옵션명과 추가금액을 같은 줄에 배치 */
.mvpn-product-page
#sit_sel_option
#sit_opt_added
.opt_name {
    position: static !important;
    display: flex !important;

    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;

    width: 100% !important;

    margin: 0 0 8px !important;
    padding: 0 38px 0 0 !important;

    box-sizing: border-box !important;
    float: none !important;
    clear: both !important;
}

/* 기간: 30일 / 속도: 50Mbps */
.mvpn-product-page
#sit_sel_option
#sit_opt_added
.sit_opt_subj {
    display: block !important;
    flex: 1 1 auto !important;

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

    color: #182d48 !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    line-height: 1.35 !important;
    letter-spacing: -0.02em !important;
    white-space: normal !important;
}

/* (+0원) */
.mvpn-product-page
#sit_sel_option
#sit_opt_added
.sit_opt_prc {
    position: static !important;
    display: block !important;
    flex: 0 0 auto !important;

    width: auto !important;
    height: auto !important;

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

    color: #0867f2 !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    line-height: 1.35 !important;
    text-align: right !important;
    white-space: nowrap !important;

    float: none !important;
    transform: none !important;
}

/* 수량 조절 영역 */
.mvpn-product-page
#sit_sel_option
#sit_opt_added
.opt_count {
    position: static !important;
    display: flex !important;

    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-start !important;

    width: 92px !important;
    min-width: 92px !important;
    max-width: 92px !important;

    height: 28px !important;
    min-height: 28px !important;
    max-height: 28px !important;

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

    overflow: visible !important;
    white-space: nowrap !important;

    float: none !important;
    clear: both !important;
    box-sizing: border-box !important;
}

/* 수량 입력칸을 첫 번째로 표시 */
.mvpn-product-page
#sit_sel_option
#sit_opt_added
.opt_count
input.num_input,
.mvpn-product-page
#sit_sel_option
#sit_opt_added
.opt_count
input[name^="ct_qty"] {
    order: 1 !important;

    position: static !important;
    display: block !important;
    flex: 0 0 40px !important;

    width: 40px !important;
    min-width: 40px !important;
    max-width: 40px !important;

    height: 28px !important;
    min-height: 28px !important;
    max-height: 28px !important;

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

    color: #182d48 !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    line-height: 28px !important;

    text-align: center !important;
    text-indent: 0 !important;
    vertical-align: middle !important;

    border: 1px solid #cbd7e5 !important;
    border-radius: 5px 0 0 5px !important;
    background: #ffffff !important;
    box-shadow: none !important;

    appearance: none !important;
    box-sizing: border-box !important;
    float: none !important;
}

/* 플러스 버튼을 두 번째로 표시 */
.mvpn-product-page
#sit_sel_option
#sit_opt_added
.opt_count
.sit_qty_plus {
    order: 2 !important;
}

/* 마이너스 버튼을 세 번째로 표시 */
.mvpn-product-page
#sit_sel_option
#sit_opt_added
.opt_count
.sit_qty_minus {
    order: 3 !important;
}

/* 플러스·마이너스 버튼 공통 */
.mvpn-product-page
#sit_sel_option
#sit_opt_added
.opt_count
.sit_qty_plus,
.mvpn-product-page
#sit_sel_option
#sit_opt_added
.opt_count
.sit_qty_minus {
    position: relative !important;
    display: inline-flex !important;

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

    flex: 0 0 26px !important;

    width: 26px !important;
    min-width: 26px !important;
    max-width: 26px !important;

    height: 28px !important;
    min-height: 28px !important;
    max-height: 28px !important;

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

    overflow: hidden !important;

    color: transparent !important;
    font-size: 0 !important;
    line-height: 1 !important;
    text-indent: -9999px !important;
    white-space: nowrap !
important;

    border: 1px solid #cbd7e5 !important;
    border-left: 0 !important;
    border-radius: 0 !important;
    background: #f8faff !important;
    box-shadow: none !important;

    box-sizing: border-box !important;
    float: none !important;
    clear: none !important;
    transform: none !important;
}

/* 마지막 마이너스 버튼만 둥글게 */
.mvpn-product-page
#sit_sel_option
#sit_opt_added
.opt_count
.sit_qty_minus {
    border-radius: 0 5px 5px 0 !important;
}

/* 기존 아이콘과 접근성 문구는 시각적으로 숨김 */
.mvpn-product-page
#sit_sel_option
#sit_opt_added
.opt_count
.sit_qty_plus
i,
.mvpn-product-page
#sit_sel_option
#sit_opt_added
.opt_count
.sit_qty_minus
i,
.mvpn-product-page
#sit_sel_option
#sit_opt_added
.opt_count
.sit_qty_plus
.sound_only,
.mvpn-product-page
#sit_sel_option
#sit_opt_added
.opt_count
.sit_qty_minus
.sound_only {
    display: none !important;
}

/* 기존 가상요소 초기화 */
.mvpn-product-page
#sit_sel_option
#sit_opt_added
.opt_count
.sit_qty_plus::before,
.mvpn-product-page
#sit_sel_option
#sit_opt_added
.opt_count
.sit_qty_minus::before {
    display: none !important;
    content: none !important;
}

/* + */
.mvpn-product-page
#sit_sel_option
#sit_opt_added
.opt_count
.sit_qty_plus::after {
    position: absolute !important;
    inset: 0 !important;

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

    content: "+" !important;

    color: #36506e !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    text-indent: 0 !important;
}

/* − */
.mvpn-product-page
#sit_sel_option
#sit_opt_added
.opt_count
.sit_qty_minus::after {
    position: absolute !important;
    inset: 0 !important;

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

    content: "−" !important;

    color: #36506e !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    text-indent: 0 !important;
}

/* 삭제 버튼 */
.mvpn-product-page
#sit_sel_option
#sit_opt_added
.opt_count
.sit_opt_del {
    order: 4 !important;

    position: absolute !important;
    top: 12px !important;
    right: 12px !important;

    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    width: 28px !important;
    min-width: 28px !important;
    max-width: 28px !important;

    height: 28px !important;
    min-height: 28px !important;
    max-height: 28px !important;

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

    overflow: hidden !important;

    color: transparent !important;
    font-size: 0 !important;
    line-height: 1 !important;
    text-indent: -9999px !important;
    white-space: nowrap !important;

    border: 1px solid #d1dce9 !important;
    border-radius: 50% !important;
    background: #ffffff !important;
    box-shadow: none !important;

    box-sizing: border-box !important;
    float: none !important;
    transform: none !important;
}

/* 기존 삭제 가상요소 초기화 */
.mvpn-product-page
#sit_sel_option
#sit_opt_added
.opt_count
.sit_opt_del::before {
    display: none !important;
    content: none !important;
}

/* × */
.mvpn-product-page
#sit_sel_option
#sit_opt_added
.opt_count
.sit_opt_del::after {
    position: absolute !important;
    inset: 0 !important;

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

    content: "×" !important;

    color: #71839a !important;
    font-size: 16px !important;
    font-weight: 500 !important;
    line-height: 1 !important;
    text-indent: 0 !important;
}

/* 마우스 오버 */
.mvpn-product-page
#sit_sel_option
#sit_opt_added
.opt_count
.sit_qty_plus:hover,
.mvpn-product-page
#sit_sel_option
#sit_opt_added
.opt_count
.sit_qty_minus:hover {
    border-color: #9ebce3 !important;
    background: #edf5ff !important;
}

.mvpn-product-page
#sit_sel_option
#sit_opt_added
.opt_count
.sit_opt_del:hover {
    border-color: #efb7c0 !important;
    background: #fff6f7 !important;
}

.mvpn-order-total {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 68px;
    margin-top: 18px;
    padding: 0 19px;
    border: 1px solid #cddffa;
    border-radius: 11px;
    background: #f0f6ff;
}

.mvpn-order-total > span {
    color: #42566f;
    font-size: 13px;
    font-weight: 850;
}

.mvpn-order-total #sit_tot_price {
    margin: 0 !important;
    color: #176bea;
    font-size: 14px;
    font-weight: 850;
    line-height: 1.4;
    text-align: right;
}

.mvpn-order-total #sit_tot_price span {
    display: none;
}

.mvpn-order-total #sit_tot_price strong {
    color: #176bea;
    font-size: 24px;
    font-weight: 850;
}

.mvpn-order-notice {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin: 15px 0 19px;
    padding: 13px 15px;
    color: #64758c;
    border: 1px solid #e1e7ef;
    border-radius: 9px;
    background: #f8fafc;
}

.mvpn-order-notice i {
    margin-top: 3px;
    color: #4387ec;
}

.mvpn-order-notice p {
    margin: 0;
    font-size: 11px;
    line-height: 1.65;
}

.mvpn-order-buttons {
    display: grid;
    grid-template-columns: 0.72fr 1.28fr;
    gap: 9px;
}

.mvpn-order-buttons button {
    width: 100% !important;
    height: 54px !important;
    margin: 0 !important;
    font-size: 14px !important;
    font-weight: 850 !important;
    border-radius: 10px !important;
    cursor: pointer;
}

.mvpn-order-buttons .sit_btn_cart {
    color: #465a73;
    border: 1px solid #ccd6e3;
    background: #ffffff;
}

.mvpn-order-buttons .sit_btn_buy {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    color: #ffffff;
    border: 1px solid #1d6ee7;
    background: linear-gradient(135deg, #358aff, #155bd9);
    box-shadow: 0 13px 27px rgba(22, 92, 218, 0.21);
}

#sit_ov_soldout {
    margin: 15px 0;
    padding: 17px;
    color: #d14d62;
    font-weight: 800;
    text-align: center;
    border: 1px solid #f4cbd2;
    border-radius: 9px;
    background: #fff5f6;
}

.mvpn-product-guide {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 15px;
    width: min(1180px, calc(100% - 64px));
    margin: 22px auto 0;
}

.mvpn-product-guide article {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    padding: 22px;
    border: 1px solid #dfe7f1;
    border-radius: 14px;
    background: #ffffff;
}

.mvpn-product-guide article > span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 40px;
    width: 40px;
    height: 40px;
    color: #2476eb;
    border-radius: 11px;
    background: #edf5ff;
}

.mvpn-product-guide strong {
    display: block;
    margin: 2px 0 7px;
    color: #263a54;
    font-size: 13px;
    font-weight: 850;
}

.mvpn-product-guide p {
    margin: 0;
    color: #77869a;
    font-size: 11px;
    line-height: 1.7;
    word-break: keep-all;
}

@media (max-width: 980px) {
    .mvpn-product-layout {
        grid-template-columns: 1fr;
    }

    .mvpn-product-specs {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 700px) {
    .mvpn-product-page {
        padding: 25px 0 65px;
    }

    .mvpn-product-nav,
    .mvpn-product-layout,
    .mvpn-product-guide {
        width: calc(100% - 28px);
    }

    .mvpn-product-layout {
        border-radius: 19px;
    }

    .mvpn-product-summary-inner {
        padding: 32px 23px;
    }

    .mvpn-product-summary h1 {
        font-size: 34px;
    }

    .mvpn-product-specs {
        grid-template-columns: repeat(2, 1fr);
    }

    .mvpn-order-panel {
        padding: 32px 21px;
    }

    .mvpn-order-heading h2 {
        font-size: 25px;
    }

    .mvpn-order-steps li {
        gap: 4px;
        font-size: 10px;
    }

    .mvpn-choice-content th,
    .mvpn-choice-content td {
        display: block;
        width: 100%;
        padding-right: 0;
    }

    .mvpn-choice-content th {
        padding-bottom: 7px;
    }

    .mvpn-order-buttons {
        grid-template-columns: 1fr;
    }

    .mvpn-product-guide {
        grid-template-columns: 1fr;
    }
}

/* ===== MEGAVPN OPTION LAYOUT OVERRIDE FINAL ===== */

.mvpn-product-page #sit_sel_option #sit_opt_added > li {
    position: relative !important;
    display: block !important;
    min-height: 86px !important;
    padding: 14px !important;
    border: 1px solid #d8e2ee !important;
    border-radius: 10px !important;
    background: #fff !important;
    box-sizing: border-box !important;
}

/* 제목 + 금액 줄 */
.mvpn-product-page #sit_sel_option #sit_opt_added > li .opt_name {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding-right: 42px !important;
    margin: 0 0 10px 0 !important;
    float: none !important;
    clear: both !important;
}

.mvpn-product-page #sit_sel_option #sit_opt_added > li .sit_opt_subj {
    font-size: 14px !important;
    font-weight: 700 !important;
    color: #182d48 !important;
    line-height: 1.4 !important;
}

/* (+0원) */
.mvpn-product-page #sit_sel_option #sit_opt_added > li .sit_opt_prc {
    position: static !important;
    display: inline-block !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #0867f2 !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    line-height: 1.4 !important;
    white-space: nowrap !important;
}

/* 수량 영역 */
.mvpn-product-page #sit_sel_option #sit_opt_added > li .opt_count {
    display: grid !important;
    grid-template-columns: 42px 26px 26px !important;
    grid-template-areas: "qty plus minus" !important;
    width: 94px !important;
    height: 28px !important;
    margin: 0 !important;
    padding: 0 !important;
    gap: 0 !important;
    float: none !important;
    clear: both !important;
    overflow: visible !important;
}

/* 수량 input */
.mvpn-product-page #sit_sel_option #sit_opt_added > li .opt_count input[name^="ct_qty"],
.mvpn-product-page #sit_sel_option #sit_opt_added > li .opt_count input.frm_input,
.mvpn-product-page #sit_sel_option #sit_opt_added > li .opt_count input.num_input {
    grid-area: qty !important;
    width: 42px !important;
    height: 28px !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: center !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    border: 1px solid #cbd7e5 !important;
    border-radius: 5px 0 0 5px !important;
    background: #fff !important;
    box-sizing: border-box !important;
}

/* + 버튼 */
.mvpn-product-page #sit_sel_option #sit_opt_added > li .opt_count .sit_qty_plus {
    grid-area: plus !important;
}

/* - 버튼 */
.mvpn-product-page #sit_sel_option #sit_opt_added > li .opt_count .sit_qty_minus {
    grid-area: minus !important;
}

/* + / - 공통 */
.mvpn-product-page #sit_sel_option #sit_opt_added > li .opt_count .sit_qty_plus,
.mvpn-product-page #sit_sel_option #sit_opt_added > li .opt_count .sit_qty_minus {
    position: relative !important;
    width: 26px !important;
    height: 28px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid #cbd7e5 !important;
    border-left: 0 !important;
    background: #f8faff !important;
    color: transparent !important;
    font-size: 0 !important;
    line-height: 0 !important;
    text-indent: -9999px !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
}

.mvpn-product-page #sit_sel_option #sit_opt_added > li .opt_count .sit_qty_minus {
    border-radius: 0 5px 5px 0 !important;
}

.mvpn-product-page #sit_sel_option #sit_opt_added > li .opt_count .sit_qty_plus::after {
    content: "+" !important;
    position: absolute !important;
    inset: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #36506e !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    text-indent: 0 !important;
    line-height: 1 !important;
}

.mvpn-product-page #sit_sel_option #sit_opt_added > li .opt_count .sit_qty_minus::after {
    content: "−" !important;
    position: absolute !important;
    inset: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #36506e !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    text-indent: 0 !important;
    line-height: 1 !important;
}

/* 삭제 버튼 */
.mvpn-product-page #sit_sel_option #sit_opt_added > li .opt_count .sit_opt_del {
    position: absolute !important;
    top: 12px !important;
    right: 12px !important;
    width: 28px !important;
    height: 28px !important;
    color: transparent !important;
    font-size: 0 !important;
    text-indent: -9999px !important;
    border: 1px solid #d1dce9 !important;
    border-radius: 50% !important;
    background: #fff !important;
    overflow: hidden !important;
}

.mvpn-product-page #sit_sel_option #sit_opt_added > li .opt_count .sit_opt_del::after {
    content: "×" !important;
    position: absolute !important;
    inset: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #71839a !important;
    font-size: 16px !important;
    text-indent: 0 !important;
    line-height: 1 !important;
}


/* ===== MEGAVPN OPTION LAYOUT OVERRIDE FINAL ===== */

.mvpn-product-page #sit_sel_option #sit_opt_added > li {
    position: relative !important;
    display: block !important;
    min-height: 86px !important;
    padding: 14px !important;
    border: 1px solid #d8e2ee !important;
    border-radius: 10px !important;
    background: #fff !important;
    box-sizing: border-box !important;
}

/* 제목 + 금액 줄 */
.mvpn-product-page #sit_sel_option #sit_opt_added > li .opt_name {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding-right: 42px !important;
    margin: 0 0 10px 0 !important;
    float: none !important;
    clear: both !important;
}

.mvpn-product-page #sit_sel_option #sit_opt_added > li .sit_opt_subj {
    font-size: 14px !important;
    font-weight: 700 !important;
    color: #182d48 !important;
    line-height: 1.4 !important;
}

/* (+0원) */
.mvpn-product-page #sit_sel_option #sit_opt_added > li .sit_opt_prc {
    position: static !important;
    display: inline-block !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #0867f2 !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    line-height: 1.4 !important;
    white-space: nowrap !important;
}

/* 수량 영역 */
.mvpn-product-page #sit_sel_option #sit_opt_added > li .opt_count {
    display: grid !important;
    grid-template-columns: 42px 26px 26px !important;
    grid-template-areas: "qty plus minus" !important;
    width: 94px !important;
    height: 28px !important;
    margin: 0 !important;
    padding: 0 !important;
    gap: 0 !important;
    float: none !important;
    clear: both !important;
    overflow: visible !important;
}

/* 수량 input */
.mvpn-product-page #sit_sel_option #sit_opt_added > li .opt_count input[name^="ct_qty"],
.mvpn-product-page #sit_sel_option #sit_opt_added > li .opt_count input.frm_input,
.mvpn-product-page #sit_sel_option #sit_opt_added > li .opt_count input.num_input {
    grid-area: qty !important;
    width: 42px !important;
    height: 28px !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: center !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    border: 1px solid #cbd7e5 !important;
    border-radius: 5px 0 0 5px !important;
    background: #fff !important;
    box-sizing: border-box !important;
}

/* + 버튼 */
.mvpn-product-page #sit_sel_option #sit_opt_added > li .opt_count .sit_qty_plus {
    grid-area: plus !important;
}

/* - 버튼 */
.mvpn-product-page #sit_sel_option #sit_opt_added > li .opt_count .sit_qty_minus {
    grid-area: minus !important;
}

/* + / - 공통 */
.mvpn-product-page #sit_sel_option #sit_opt_added > li .opt_count .sit_qty_plus,
.mvpn-product-page #sit_sel_option #sit_opt_added > li .opt_count .sit_qty_minus {
    position: relative !important;
    width: 26px !important;
    height: 28px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid #cbd7e5 !important;
    border-left: 0 !important;
    background: #f8faff !important;
    color: transparent !important;
    font-size: 0 !important;
    line-height: 0 !important;
    text-indent: -9999px !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
}

.mvpn-product-page #sit_sel_option #sit_opt_added > li .opt_count .sit_qty_minus {
    border-radius: 0 5px 5px 0 !important;
}

.mvpn-product-page #sit_sel_option #sit_opt_added > li .opt_count .sit_qty_plus::after {
    content: "+" !important;
    position: absolute !important;
    inset: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #36506e !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    text-indent: 0 !important;
    line-height: 1 !important;
}

.mvpn-product-page #sit_sel_option #sit_opt_added > li .opt_count .sit_qty_minus::after {
    content: "−" !important;
    position: absolute !important;
    inset: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #36506e !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    text-indent: 0 !important;
    line-height: 1 !important;
}

/* 삭제 버튼 */
.mvpn-product-page #sit_sel_option #sit_opt_added > li .opt_count .sit_opt_del {
    position: absolute !important;
    top: 12px !important;
    right: 12px !important;
    width: 28px !important;
    height: 28px !important;
    color: transparent !important;
    font-size: 0 !important;
    text-indent: -9999px !important;
    border: 1px solid #d1dce9 !important;
    border-radius: 50% !important;
    background: #fff !important;
    overflow: hidden !important;
}

.mvpn-product-page #sit_sel_option #sit_opt_added > li .opt_count .sit_opt_del::after {
    content: "×" !important;
    position: absolute !important;
    inset: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #71839a !important;
    font-size: 16px !important;
    text-indent: 0 !important;
    line-height: 1 !important;
}
