@charset "UTF-8";

.btn { display: inline-flex; align-items: center; } 
.card-item {border-radius: 14px;background: var(--white);box-shadow: 6px 6px 54px 0 rgba(0, 0, 0, 0.05);} 
.contents-page { padding: clamp(20px, 3vw, 40px); background: var(--regular); min-height: 100vh; } 
.contents-top-row { display: grid; grid-template-columns: 1.2fr 1fr; gap: 32px; margin-bottom: 50px; } 
.contents-top-card { display: flex; align-items: center; justify-content: space-between; gap: 20px; height: 80px; padding: 19px 2rem; border-radius: 14px; background: var(--white); box-shadow: 6px 6px 54px 0 rgba(0, 0, 0, 0.05); } 
.welcome-title {font-size: 16px;font-weight: 500;color: var(--black);line-height: 1.45;} 
.welcome-title span { text-decoration: underline; text-underline-offset: 3px; } 
.welcome-desc { display: flex; align-items: center; gap: 4px; margin-top: 4px; } 
.welcome-desc .tag {display: inline-block;padding: 2.5px 16px;border-radius: 2px;border-radius: 4px;font-size: 10px;font-weight: 500;width: 56px;height: 20px;display: flex;align-items: center;justify-content: center;}
.welcome-desc .tag.tag-plus { color: #7658BB; background: linear-gradient(90deg, #EAF3FF 0%, #DCEBFF 49.04%, #F5F7FA 100%); border: 1px solid #EBEBFF}
.welcome-desc .tag.tag-free {color: #7658BB;background: #F3F1F8;border: 1px solid #E2DFF0;}
.welcome-desc .txt {font-weight: 500;font-size: 13px;color: var(--info);} 
.contents-welcome-right { display: flex; align-items: center; gap: 1rem; flex-shrink: 0; } 
.alarm-btn { width: 44px; height: 44px; border: 0; position: relative; display: flex; align-items: center; justify-content: center; } 
.alarm-btn.on::after { content: ""; position: absolute; top: 11px; right: 14px; width: 6px; height: 6px; border-radius: 50%; background: #ff4d57; }
.user-chip { display: flex; align-items: center; gap: 10px; position: relative; } 
.user-avatar { width: 36px; height: 36px; border-radius: 50%; position: relative; overflow: hidden; } 
.user-avatar img { width: 100%; height: 100%; object-fit: cover; position: absolute; top: 0; left: 0; } 
.user-meta strong { display: block; margin-bottom: 4px; color: var(--sub); font-size: 14px; font-weight: 600; line-height: 145%; /* 20.3px */
 letter-spacing: -0.35px; text-align: center; } 
.user-meta span { display: block; color: var(--info); font-size: 12px; font-weight: 400; line-height: 145%; /* 17.4px */
 letter-spacing: -0.3px; text-align: center; } 
.user-more_wrap { position: relative; } 
.user-more { width: 18px; height: 18px; border: 1px solid var(--sub); border-radius: 50%; position: relative; display: flex; align-items: center; justify-content: center; cursor: pointer; transition: transform 0.2s ease; } 
.user-more_wrap.open .user-more { transform: rotate(180deg); }
.user-more_menu { position: absolute; right: 0; top: calc(100% + 8px); opacity: 0; visibility: hidden; border-radius: 4px; box-shadow: 0px 8px 20px 0px rgba(0, 20, 55, 0.16); padding: 8px; background: #fff; transition: opacity 0.2s ease, visibility 0.2s ease; z-index: 100; } 
.user-more_wrap.open .user-more_menu { opacity: 1; visibility: visible; } 
.user-more_menu > li > a { text-align: center; display: block; width: 60px; padding: 8px 0; font-family: Pretendard; font-weight: 400; font-size: 12px; line-height: 145%; }
.user-more_menu .user-info { background: var(--regular); border-radius: 4px; }

/* 테이블 행 관리(관리) 드롭다운 */
.row-manage_wrap { position: relative; display: inline-block; }
.row-manage-toggle { display: inline-flex; align-items: center; gap: 4px; background: none; border: 0; padding: 0; font-family: inherit; font-size: 14px; color: var(--black); letter-spacing: -0.35px; cursor: pointer; }
.row-manage_wrap.open .row-manage-toggle .ico { transform: rotate(180deg); }
.row-manage-menu { position: absolute; right: 0; top: calc(100% + 8px); width: 171px; opacity: 0; visibility: hidden; text-align: left; background: #fff; border-radius: 4px; box-shadow: 0px 8px 20px 0px rgba(0, 20, 55, 0.16); padding: 8px 0; transition: opacity 0.2s ease, visibility 0.2s ease; z-index: 100; }
.row-manage_wrap.open .row-manage-menu { opacity: 1; visibility: visible; }
.row-manage-item { display: flex; align-items: center; gap: 8px; width: 100%; padding: 8px 16px; background: none; border: 0; font-family: inherit; font-size: 14px; color: var(--black); letter-spacing: -0.35px; text-align: left; white-space: nowrap; cursor: pointer; }
.row-manage-item:hover { background: var(--regular); }
.notice-strip { gap: 40px; } 
.notice-strip-label { color: var(--black); font-size: 18px; font-weight: 500; line-height: 140%;
 letter-spacing: -0.45px; } 
.notice-strip-title { flex: 1; color: var(--info); font-size: 1rem; font-weight: 400; line-height: 140%;
 letter-spacing: -0.4px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } 
.notice-strip-date { color: var(--info); text-align: right; font-size: 1rem; font-weight: 400; line-height: 140%;
 letter-spacing: -0.4px; white-space: nowrap; } 
.bbs-board-card { padding: 24px 52px; } 
.bbs-table { width: 100%; border-collapse: collapse; table-layout: fixed; } 
.bbs-table thead th { padding: 13px 0 9px; height: 44px; border-bottom: 1.5px solid #ff5b66; color: var(--sub); text-align: center; font-size: 15px; font-weight: 500; line-height: 145%; letter-spacing: -0.375px; } 
.bbs-table tbody td {padding: 8px  0; border-bottom: 1px solid var(--regular); text-align: center; height: 80px; overflow: hidden; color: var(--black); font-size: 14px; font-weight: 400; line-height: 145%; letter-spacing: -0.375px; transition: .4s; } 
.bbs-table:not(.report-table) tbody tr:hover td { border-bottom-color: var(--main); } 
.bbs-table .btn-detail:hover { background-color: var(--main); border-color: var(--main); color: var(--white); } 
.bbs-table tbody td.col-title { text-align: left; white-space: nowrap; text-overflow: ellipsis; overflow: hidden; padding-left: 40px; }
.bbs-table tbody td.col-manage { overflow: visible; text-align: right; padding-right: 24px; }
.is-new { display: inline-flex; align-items: center; justify-content: center; width: 14px; height: 14px; margin-left: 6px; border-radius: 50%; background: var(--main); color: var(--white); font-size: 8px; line-height: normal; font-weight: 700; vertical-align: middle; } 
.bbs-table tbody tr:first-child td{padding-top: 12px;}
.table-scroll{overflow-x: auto}

@media (min-width: 769px) and (max-width: 1440px){
    .table-scroll .bbs-table{width: 1440px;}
}

@media (max-width: 1024px) {
    .contents-top-row{grid-template-columns: 1fr;}
}

@media (max-width: 768px) {
    .contents-top-card { padding: 18px; height: auto; flex-direction: column; align-items: baseline; } 
    .notice-strip { align-items: flex-start; flex-direction: column; gap: 8px; } 
    .bbs-table thead { display: none; } 
    .bbs-table,
    .bbs-table tbody,
    .bbs-table tr,
    .bbs-table td { display: block; width: 100%; } 
    .bbs-table tr { padding: 14px 0; border-bottom: 1px solid #eef0f4; } 
    .bbs-table tbody td { padding: 6px 0; border-bottom: 0; text-align: left; } 
    .bbs-table tbody td::before {min-width: 60px;margin-right: 10px;font-weight: 700;color: #666;} 
    .welcome-title {font-size: 13px;font-weight: 400;padding-bottom: 5px;}
    .welcome-desc {gap: 24px; margin-top: 7.5px;}
    .welcome-title p {font-size: 14px;}
    .welcome-title span {font-weight: 500;}
}


/* ── Dashboard ── */
.dashboard-page-header { display: flex; align-items: center; justify-content: space-between; margin-bottom: 24px; } 
.btn-download { display: inline-flex; align-items: center; gap: 6px; padding: 10px 20px; border-radius: 8px; background: var(--black); color: var(--white); font-size: 14px; font-weight: 500; border: none; cursor: pointer; } 

/* Campaign summary */
.campaign-summary { display: flex; align-items: center; padding: 24px 32px; margin-bottom: 32px; gap: 24px; } 
.campaign-summary-left { flex-shrink: 0; } 
.campaign-total { font-size: 18px; font-weight: 600; color: var(--black); margin-bottom: 4px; } 
.campaign-total strong { color: var(--black); font-weight: 700; } 
.campaign-sub { font-size: 13px; color: var(--info); margin: 0; } 
.campaign-summary-right { display: flex; align-items: center; gap: 12px; margin-left: auto; } 
.btn-campaign-pill { display: inline-flex; align-items: center; gap: 16px; background: var(--main); color: var(--white); border-radius: 10px; padding: 20px 28px; font-size: 15px; font-weight: 600; text-decoration: none; white-space: nowrap; min-height: 70px; } 
.btn-campaign-pill .pill-icon { display: flex; align-items: center; gap: 6px; } 
.btn-campaign-pill .pill-num { font-size: 24px; font-weight: 700; } 
.vdivider { display: none; } 
.campaign-kpi-card { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 16px 20px; min-width: 140px; min-height: 70px; } 
.campaign-kpi { display: flex; flex-direction: column; gap: 4px; } 
.kpi-label { display: flex; align-items: center; gap: 4px; font-size: 13px; color: var(--info); white-space: nowrap; } 
.kpi-val { font-size: 22px; font-weight: 700; color: var(--black); text-decoration: none; display: flex; align-items: center; gap: 6px; } 
.kpi-arrow { display: flex; align-items: center; justify-content: center; flex-shrink: 0; } 

/* Platform section */
.platform-section { margin-bottom: 40px; } 
.platform-header { margin-bottom: 16px; } 
.platform-title { font-size: 18px; font-weight: 600; color: var(--black); display: flex; align-items: center; gap: 6px; margin: 0; } 
.badge-naver { display: inline-flex; align-items: center; justify-content: center; width: 20px; height: 20px; border-radius: 4px; background: #03C75A; color: var(--white); font-size: 11px; font-weight: 700; line-height: 1; } 
.badge-instagram { display: inline-flex; align-items: center; justify-content: center; width: 20px; height: 20px; border-radius: 4px; background: radial-gradient(circle at 30% 107%, #fdf497 0%, #fd5949 45%, #d6249f 60%, #285AEB 90%); font-size: 13px; line-height: 1; } 

/* Platform stat cards */
.platform-stats-row { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; margin-bottom: 16px; } 
.platform-stat-card { padding: 20px 24px; display: flex; align-items: center; justify-content: space-between; } 
.pstat-info { display: flex; flex-direction: column; gap: 4px; } 
.pstat-label { font-size: 13px; color: var(--info); } 
.pstat-value { font-size: 24px; font-weight: 700; color: var(--black); letter-spacing: -0.5px; } 
.pstat-icon-wrap { width: 48px; height: 48px; border-radius: 12px; display: flex; align-items: center; justify-content: center; flex-shrink: 0; } 
.pstat-icon-wrap.green { background: #e6f9f0; } 
.pstat-icon-wrap.pink { background: #fde8f0; } 
.pstat-icon-wrap.purple { background: #ede9fe; } 
.pstat-icon-wrap.blue { background: #dbeafe; } 
.pstat-icon-wrap.red { background: #ffe4e6; } 
.pstat-icon-wrap svg { width: 22px; height: 22px; } 

/* Chart row */
.platform-chart-row { display: grid; grid-template-columns: 1fr 220px; gap: 16px; } 
.platform-chart-card { padding: 24px; } 
.chart-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 20px; } 
.chart-title { font-size: 14px; font-weight: 500; color: var(--black); } 
.chart-tabs { display: flex; gap: 4px; } 
.chart-tab { padding: 5px 12px; border-radius: 6px; border: 1px solid var(--line-gray); background: var(--white); font-size: 12px; color: var(--info); cursor: pointer; } 
.chart-tab.active { background: var(--black); color: var(--white); border-color: var(--black); } 
.chart-canvas-wrap { position: relative; height: 200px; } 

/* Side stats */
.platform-side-stats { display: flex; flex-direction: column; gap: 16px; } 
.side-stat-card { padding: 20px; display: flex; align-items: center; gap: 16px; flex: 1; } 
.side-stat-icon { width: 44px; height: 44px; border-radius: 10px; display: flex; align-items: center; justify-content: center; flex-shrink: 0; } 
.side-stat-icon.green  { background: #e6f9f0; }
.side-stat-icon.orange { background: #fff3e0; }
.side-stat-icon.blue   { background: #dbeafe; }
.side-stat-icon.purple { background: #ede9fe; }
.side-stat-icon svg    { width: 20px; height: 20px; }
.side-stat-label { font-size: 12px; color: var(--info); margin-bottom: 4px; }
.side-stat-value { font-size: 13px; font-weight: 700; margin: 0; }
.side-stat-value.green  { color: #00b96b; }
.side-stat-value.orange { color: #ff8c00; }
.side-stat-value.blue   { color: #2563eb; }
.side-stat-value.purple { color: #7c3aed; }
.side-stat-change { font-size: 12px; font-weight: 400; }

@media (max-width: 1024px) {
    .platform-stats-row { grid-template-columns: repeat(2, 1fr); }
    .platform-chart-row { grid-template-columns: 1fr; }
    .platform-side-stats { flex-direction: row; }
    .campaign-summary { flex-direction: column; align-items: flex-start; gap: 16px; }
    .campaign-summary-right { margin-left: 0; flex-wrap: wrap; width: 100%; }
    .campaign-kpi-card { flex: 1; min-width: auto; }
}
@media (max-width: 768px) {
    .platform-stats-row { grid-template-columns: repeat(2, 1fr); }
    .campaign-summary-right { gap: 10px; }
    .campaign-kpi-card { padding: 12px 14px; min-height: auto; }
    .kpi-val { font-size: 18px; }
    .btn-campaign-pill { padding: 14px 18px; min-height: auto; }
    .btn-campaign-pill .pill-num { font-size: 20px; }
}

/* Tooltip */
.tooltip-wrap {position: relative; order: 1; display: inline-flex; align-items: center; justify-content: center; gap: 4px; } 
.tooltip-btn { border: none; background: transparent; cursor: pointer; padding: 0; display: flex; align-items: center; justify-content: center; position: relative; }
.tooltip-box { position: absolute; top: calc(100% + 8px); left: 50%; transform: translateX(-50%); background: #fff; border-radius: 8px; padding: 8px 16px; font-size: 13px; font-weight: 400; color: var(--info); white-space: nowrap; opacity: 0; visibility: hidden; transition: opacity 0.2s ease, visibility 0.2s ease; z-index: 200; box-shadow: 2px 4px 12px 0px #11111121; } 
.tooltip-box::before { content: ""; position: absolute; bottom: 100%; left: 50%; transform: translateX(-50%); border-width: 6px; border-style: solid; border-color: transparent transparent #fff transparent; } 
.tooltip-wrap:hover .tooltip-box,
.tooltip-wrap.active .tooltip-box { opacity: 1; visibility: visible; } 
.tooltip-box_list strong { font-size: 13px; font-weight: 500; color: var(--sub) }
.tooltip-box_list + .tooltip-box_list { margin-top: 8px }
.tooltip-wrap { position: relative; }
.tooltip-box__tit { font-size: 14px; font-weight: 500; color: var(--sub); margin-bottom: 4px; letter-spacing: -0.35px; }
.tooltip-box__txt { font-size: 13px; color: var(--info:); letter-spacing: -0.325px; line-height: 1.45; white-space: normal; min-width: 200px; }
.tooltip-box__list { margin: 6px 0 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 4px; }
.tooltip-box__list li { font-size: 13px; color: var(--info:); letter-spacing: -0.325px; line-height: 1.45; white-space: normal; }
.tooltip-box__list strong { font-size: 13px; font-weight: 500; color: var(--sub); }
.tooltip-box.left{left: 0; transform: translateX(0);}
.tooltip-box.left .tooltip-box__txt{min-width: auto; white-space: nowrap;}
.tooltip-box.left::before{left: 12px; transform: translateX(0);}
.tooltip-box__list.decimal li{position: relative; padding-left: 6px; white-space: nowrap;}
.tooltip-box__list.decimal li::before { content: ""; width: 2px; height: 2px; background-color: var(--sub); border-radius: 50%; position: absolute; top: 8.5px; left: 0; }
.tooltip-box.insight-tooltip-box { width: 258px; box-sizing: border-box; white-space: normal; text-align: left; padding: 16px; border-radius: 14px; display: flex; flex-direction: column; gap: 8px; box-shadow: 0px 8px 20px 0px rgba(0,20,55,0.16); }
.tooltip-box.insight-tooltip-box::before { content: none; }
.insight-head { display: flex; flex-direction: column; gap: 4px; }
.insight-head strong { font-size: 16px; font-weight: 500; color: #111; letter-spacing: -0.4px; line-height: 1.4; }
.insight-head span { font-size: 14px; font-weight: 400; color: #767676; letter-spacing: -0.35px; line-height: 1.45; }
.insight-rating-box,
.insight-point-box { border: 1px solid #e5e5ec; border-radius: 4px; padding: 8px 10px; display: flex; flex-direction: column; gap: 8px; }
.insight-box-title { font-size: 14px; font-weight: 500; color: #111; letter-spacing: -0.35px; }
.insight-rating-list,
.insight-point-list { display: flex; flex-direction: column; gap: 4px; list-style: none; margin: 0; padding: 0; }
.insight-rating-list li,
.insight-point-list li { display: flex; align-items: center; justify-content: space-between; padding: 4px 8px; border-radius: 4px; font-size: 12px; letter-spacing: -0.3px; white-space: nowrap; }
.insight-rating-list li .txt,
.insight-point-list li .txt { display: flex; align-items: center; gap: 8px; }
.insight-rating-list li strong,
.insight-point-list li strong { font-weight: 500; }
.insight-point-list li .txt,
.insight-point-list li strong { color: var(--sub); }
.insight-rating-list li.is-best { background: #e8fdff; color: #3cbfcd; }
.insight-rating-list li.is-good { background: #e8ffef; color: #3cbf96; }
.insight-rating-list li.is-normal { background: #fff8e8; color: #ffb751; }
.insight-rating-list li.is-bad { background: #ffe8e8; color: #ff4040; }
.ico-insight-good { background-image: url('../img/ico_insight_good.svg'); }
.ico-insight-bad { background-image: url('../img/ico_insight_bad.svg'); }
.tooltip-wrap.insight-cell-wrap { width: 100%; justify-content: flex-start; }
.insight-cell-trigger { display: flex; flex-direction: column; align-items: flex-start; gap: 2px; width: 100%; background: none; border: none; padding: 0; cursor: pointer; text-align: left; }
.insight-cell-trigger .insight-top { display: flex; align-items: center; gap: 2px; font-size: 12px; font-weight: 400; color: #111; letter-spacing: -0.3px; white-space: nowrap; }
.insight-cell-trigger .insight-top .ico { width: 12px; height: 12px; }
.insight-cell-trigger .insight-count { font-size: 12px; font-weight: 400; color: #111; letter-spacing: -0.3px; white-space: nowrap; padding-left: 14px; }


/* Clear button (active state) */
.wrap-input.active .search-btn { display: none; } 
.clear-btn { width: 34px; height: 34px; border: none; background: transparent; display: none; align-items: center; justify-content: center; cursor: pointer; flex-shrink: 0; } 
.wrap-input.active .clear-btn { display: flex; } 
.clear-btn .ico-close { width: 24px; height: 24px; background-image: url('../img/ico_close.svg'); background-size: contain; background-repeat: no-repeat; background-position: center; } 
.campaign-thumb {border-radius: 0 20px 0 0;overflow: hidden;width: 64px;height: 64px;margin: 0 auto;} 
.campaign-thumb img { width: 100%; height: 100%; object-fit: cover; } 
.tit-hidden { white-space: nowrap !important; overflow: hidden !important; text-overflow: ellipsis !important; } 
.channel-badges { display: flex; align-items: center; justify-content: center; gap: 4px;}
.channel-badges i {width: 36px;height: 36px;background-repeat: no-repeat;background-image: url("../img/sp-channel.svg");background-size: calc(36px * 18) auto;background-position: 0 0;overflow: hidden;border: 1px solid #DFDFDF;border-radius: 5px;box-shadow: 0px 4px 4px 0px #0000000D;box-sizing: border-box;} 

.channel-badges .channel-coupang { background-position: 0 0; }
.channel-badges .channel-naver { background-position: -36px 0; }
.channel-badges .channel-blog {border: 0;width: 36px;height: 36px;background-position: calc(36px *  17 * -1);background-size: calc(36px * 18);}
.channel-badges .channel-kakao { background-position: calc(36px * 2 * -1) 0; }
.channel-badges .channel-oliveyoung { background-position: calc(36px * 3 * -1) 0; }
.channel-badges .channel-ohouse {background-position: calc(36px * 4 * -1) 0;}
.channel-badges .channel-zigzag { background-position: calc(36px * 5 * -1) 0; }
.channel-badges .channel-musinsa { background-position: calc(36px * 6 * -1) 0; }
.channel-badges .channel-ably { background-position: calc(36px * 7 * -1) 0; }
.channel-badges .channel-etc { background-position: calc(36px * 8 * -1) 0; }
.channel-badges .channel-wconcept { background-position: calc(36px * 9 * -1) 0; }
.channel-badges .channel-lotteon { background-position: calc(36px * 10 * -1) 0; }
.channel-badges .channel-kurly { background-position: calc(36px * 11 * -1) 0; }
.channel-badges .channel-cjone { background-position: calc(36px * 12 * -1) 0; }
.channel-badges .channel-jasa {background-position: calc(36px * 13 * -1) 0;}
.channel-badges .channel-review { background-position: calc(36px * 14 * -1) 0; }
.channel-badges .channel-gsshop { background-position: calc(36px * 15 * -1) 0; }

/* i가 2개 이상일 때 (32x32) */
.channel-badges:has(i:nth-child(2)) i {w;width: 33px;height: 33px;background-size: calc(32px * 18) auto;} 
.channel-badges:has(i:nth-child(2)) .channel-coupang { background-position: 0 0; }
.channel-badges:has(i:nth-child(2)) .channel-naver { background-position: -32px 0 }
.channel-badges:has(i:nth-child(2)) .channel-blog {width: 34px;height: 34px;background-size: calc(34px * 18) auto;background-position: calc(34px *  17 * -1);}
.channel-badges:has(i:nth-child(2)) .channel-kakao {background-position: calc(32px * 2 * -1) 0;}
.channel-badges:has(i:nth-child(2)) .channel-oliveyoung {background-position: calc(32px * 3 * -1) 0;}
.channel-badges:has(i:nth-child(2)) .channel-ohouse { background-position: calc(32px * 4 * -1) 0; }
.channel-badges:has(i:nth-child(2)) .channel-zigzag { background-position: calc(32px * 5 * -1) 0; }
.channel-badges:has(i:nth-child(2)) .channel-musinsa { background-position: calc(32px * 6 * -1) 0; }
.channel-badges:has(i:nth-child(2)) .channel-ably { background-position: calc(32px * 7 * -1) 0; }
.channel-badges:has(i:nth-child(2)) .channel-etc { background-position: calc(32px * 8 * -1) 0; }
.channel-badges:has(i:nth-child(2)) .channel-wconcept { background-position: calc(32px * 9 * -1) 0; }
.channel-badges:has(i:nth-child(2)) .channel-lotteon { background-position: calc(32px * 10 * -1) 0; }
.channel-badges:has(i:nth-child(2)) .channel-kurly { background-position: calc(32px * 11 * -1) 0; }
.channel-badges:has(i:nth-child(2)) .channel-cjone { background-position: calc(32px * 12 * -1) 0; }
.channel-badges:has(i:nth-child(2)) .channel-jasa { background-position: calc(32px * 13 * -1) 0; }
.channel-badges:has(i:nth-child(2)) .channel-review {background-position: calc(32px * 14 * -1) 0;}
.channel-badges:has(i:nth-child(2)) .channel-gsshop { background-position: calc(32px * 15 * -1) 0; }

/* ── 스프라이트 외 채널 아이콘 (시안 IMG 참고 시트 기준, 2026-10-15) ──
   단일 PNG(시안 캡처 44px 래스터) → background-size: cover 라 2개 조합 축소(33px)에도 자동 대응.
   i 공통 박스(36px/테두리/라운드/그림자)는 그대로 상속 */
.channel-badges .channel-baemin { background-image: url("../img/ico_ch_baemin.png"); }
.channel-badges .channel-coupangeats { background-image: url("../img/ico_ch_coupangeats.png"); }
.channel-badges .channel-yogiyo { background-image: url("../img/ico_ch_yogiyo.png"); }
.channel-badges .channel-ddangyo { background-image: url("../img/ico_ch_ddangyo.png"); }
.channel-badges .channel-delivery { background-image: url("../img/ico_ch_delivery.png"); }
.channel-badges .channel-insta { background-image: url("../img/ico_ch_insta.png"); }
.channel-badges .channel-baemin, .channel-badges .channel-coupangeats, .channel-badges .channel-yogiyo,
.channel-badges .channel-ddangyo, .channel-badges .channel-delivery, .channel-badges .channel-insta,
.channel-badges:has(i:nth-child(2)) .channel-baemin, .channel-badges:has(i:nth-child(2)) .channel-coupangeats, .channel-badges:has(i:nth-child(2)) .channel-yogiyo,
.channel-badges:has(i:nth-child(2)) .channel-ddangyo, .channel-badges:has(i:nth-child(2)) .channel-delivery, .channel-badges:has(i:nth-child(2)) .channel-insta { background-size: cover; background-position: center; }

/* 시안 미정 채널 근사 (쇼츠/스레드/클립/유튜브 — 위저드 자산 20px 로고를 같은 박스에 센터 배치, 시안 확정 시 교체) */
.channel-badges .channel-ytshorts { background-image: url("../img/ico_ytShorts.svg"); }
.channel-badges .channel-thread { background-image: url("../img/ico_thread.svg"); }
.channel-badges .channel-naverclip { background-image: url("../img/ico_naverClip.svg"); }
.channel-badges .channel-youtube { background-image: url("../img/ico_youtube.svg"); }
.channel-badges .channel-ytshorts, .channel-badges .channel-thread, .channel-badges .channel-naverclip, .channel-badges .channel-youtube { background-color: #fff; background-size: 22px auto; background-position: center; }
.channel-badges:has(i:nth-child(2)) .channel-ytshorts, .channel-badges:has(i:nth-child(2)) .channel-thread,
.channel-badges:has(i:nth-child(2)) .channel-naverclip, .channel-badges:has(i:nth-child(2)) .channel-youtube { background-size: 20px auto; background-position: center; }

/* ── 구매처/주문앱 셀렉트 옵션 아이콘 (campaignAdd02 SlimSelect data-html — 사용자 지시 2026-10-15, 시안 미확인 근사)
   .channel-badges 스프라이트(36px 셀)를 20px로 축소 재사용. 옵션 목록과 선택값(.ss-single) 양쪽에 동일 마크업 */
.channel-opt { display: inline-flex; align-items: center; gap: 8px; max-width: 100%; vertical-align: middle; }
.channel-opt i { flex-shrink: 0; width: 20px; height: 20px; box-sizing: border-box; border: 1px solid #DFDFDF; border-radius: 4px; overflow: hidden; background: #fff url("../img/sp-channel.svg") no-repeat 0 0; background-size: calc(20px * 18) auto; }
.channel-opt .channel-coupang { background-position: 0 0; }
.channel-opt .channel-naver { background-position: calc(20px * -1) 0; }
.channel-opt .channel-kakao { background-position: calc(20px * -2) 0; }
.channel-opt .channel-oliveyoung { background-position: calc(20px * -3) 0; }
.channel-opt .channel-ohouse { background-position: calc(20px * -4) 0; }
.channel-opt .channel-zigzag { background-position: calc(20px * -5) 0; }
.channel-opt .channel-musinsa { background-position: calc(20px * -6) 0; }
.channel-opt .channel-ably { background-position: calc(20px * -7) 0; }
.channel-opt .channel-etc { background-position: calc(20px * -8) 0; }
.channel-opt .channel-wconcept { background-position: calc(20px * -9) 0; }
.channel-opt .channel-lotteon { background-position: calc(20px * -10) 0; }
.channel-opt .channel-kurly { background-position: calc(20px * -11) 0; }
.channel-opt .channel-cjone { background-position: calc(20px * -12) 0; }
.channel-opt .channel-jasa { background-position: calc(20px * -13) 0; }
.channel-opt .channel-review { background-position: calc(20px * -14) 0; }
.channel-opt .channel-gsshop { background-position: calc(20px * -15) 0; }
.channel-opt .channel-baemin { background-image: url("../img/ico_ch_baemin.png"); }
.channel-opt .channel-coupangeats { background-image: url("../img/ico_ch_coupangeats.png"); }
.channel-opt .channel-yogiyo { background-image: url("../img/ico_ch_yogiyo.png"); }
.channel-opt .channel-ddangyo { background-image: url("../img/ico_ch_ddangyo.png"); }
.channel-opt .channel-delivery { background-image: url("../img/ico_ch_delivery.png"); }
.channel-opt .channel-baemin, .channel-opt .channel-coupangeats, .channel-opt .channel-yogiyo,
.channel-opt .channel-ddangyo, .channel-opt .channel-delivery { background-size: cover; background-position: center; }

.status-badge.waiting{color: var(--main);}
.c_sub{color: var(--sub);}

/* ── 캠페인 상세 페이지 ── */
.detail-wrap { display: flex; gap: 32px; } 

/* 캠페인 정보 카드 row */
.detail-info-row { display: flex; gap: 24px; align-items: stretch; } 
.detail-product-card { display: flex; align-items: center; gap: 8px; padding: 1rem; flex-shrink: 0; min-width: 432px; } 
.detail-status-card { display: flex; flex-direction: column; padding: 1rem 1rem 22px; min-width: 216px; } 
.detail-stepper-card { flex: 1; display: flex; align-items: center; padding: 24px 28px; background: transparent; box-shadow: none; } 
.progress-stepper { display: flex; width: 100%; position: relative; --progress: 75%; /* 진행률 (JS로 조절 가능) */}
/* 연속 라인 (배경) */
.progress-stepper::before { content: ""; position: absolute; top: 38px; left: 0; right: 0; height: 8px; background: var(--line-gray); border-radius: 4px; z-index: 0; } 
/* 진행 게이지 (채움) */
.progress-stepper::after { content: ""; position: absolute; top: 38px; width: var(--progress); height: 8px; background: var(--main); border-radius: 4px; z-index: 1; } 
.progress-stepper li { display: flex; flex-direction: column; flex: 1; position: relative; z-index: 2; } 
.progress-stepper .step-icon { width: 28px; height: 28px; border-radius: 50%; background: var(--line-gray); display: flex; align-items: center; justify-content: center; margin-bottom: 10px; }
.progress-stepper .step-txt { margin-top: 18px; } 
.progress-stepper .step-txt .tit { font-weight: 500; font-size: 14px; color: var(--info); } 
.progress-stepper .step-txt .date { font-weight: 400; font-size: 12px; color: var(--sub); } 
.progress-stepper .step-icon i { filter: brightness(0) saturate(100%) invert(24%) sepia(60%) saturate(0%) hue-rotate(218deg) brightness(94%) contrast(78%); } 
/* active 상태 */
.progress-stepper > li.active .step-icon { background: var(--main); } 
.progress-stepper > li.active .step-icon i { filter: var(--filter-white); } 
.progress-stepper > li.active .step-txt .tit { color: var(--black); } 

/* 캠페인 정보 카드 */
.detail-info-card { display: flex; align-items: center; padding: 24px 32px; gap: 32px; } 
.detail-info-left { display: flex; align-items: center; gap: 16px; flex-shrink: 0; } 
.detail-thumb { width: 104px; height: 104px; border-radius: 0 10px 0 0; overflow: hidden; flex-shrink: 0; } 
.detail-thumb img { width: 100%; height: 100%; object-fit: cover; } 
.detail-meta { } 
.detail-title { font-size: 18px; font-weight: 500; color: var(--black); margin-bottom: 4px; } 
.detail-desc { font-size: 14px; color: var(--sub); font-weight: 500; } 

/* 캠페인 현황 */
.detail-status-card .detail-info-label { } 
.detail-info-center { padding: 16px 24px; border-left: 1px solid var(--line-gray); flex-shrink: 0; } 
.detail-info-label { display: flex; align-items: center; font-size: 16px; font-weight: 500; color: var(--black); margin-bottom: 8px; } 
.detail-info-list { display: flex; flex-direction: column; } 
.detail-info-list li { display: flex; align-items: center; gap: 21px; font-size: 14px; } 
.detail-info-list li + li { margin-top: 4px; } 
.detail-info-list .label { color: var(--sub); min-width: 60px; font-size: 14px; font-weight: 500; } 
.detail-info-list .value { color: var(--black); font-weight: 500; font-size: 14px; } 

/* 진행 상태 스텝퍼 */
.detail-info-right { flex: 1; padding-left: 24px; } 

/* 탭 네비게이션 */
.detail-tab-wrap { display: flex; align-items: flex-end; justify-content: space-between; margin-top: 33px; } 
.detail-tabs { display: flex; align-items: flex-end; } 
.detail-tabs li {position: relative;z-index: 1;flex: 1;} 
.detail-tabs:has(:nth-child(5)) li:nth-child(1) { z-index: 5; } 
.detail-tabs:has(:nth-child(5)) li:nth-child(2) { z-index: 4; } 
.detail-tabs:has(:nth-child(5)) li:nth-child(3) { z-index: 3; } 
.detail-tabs:has(:nth-child(5)) li:nth-child(4) { z-index: 2; } 

.detail-tabs li + li { margin-left: -34px; } 
.detail-tabs li a { gap: 5px; font-size: 14px; font-weight: 500; color: var(--info); border-bottom: none; position: relative; transition: all 0.2s ease; min-width: 192px; height: 3rem; display: flex; align-items: center; justify-content: center; border-width: 0px 2px 0px 5px; border-style: solid; border-color: #818181; border-top-right-radius: 30px; background: #DBDBDB; } 
.detail-tabs li a::before { position: absolute; left: 0; top: 0; bottom: 0; width: 4px; background: transparent; border-radius: 12px 0 0 0; } 
.detail-tabs li.active a { border-color: var(--main); background: var(--white); color: var(--black); } 

/* 탭 아이콘 */
.detail-tabs li a i { filter: brightness(0) saturate(100%) invert(42%) sepia(4%) saturate(0%) hue-rotate(199deg) brightness(88%) contrast(85%); } 
.detail-tabs li.active a i { filter: var(--filter-black); } 

.detail-tab-btns { display: flex; gap: 8px; margin-bottom: 16px; } 
.detail-tab-btns .btn-comm{height: 42px; padding: 10px 32px;}
.detail-tab-content {background: var(--white);padding: 24px 32px;box-shadow: 6px 6px 54px 0px #0000000D;border-radius: 0 14px 14px 14px;} 
.detail-tab-content.type2{padding: 24px;}
.detail-tab-content .bbs-board-card {padding: 16px 20px;}
.row-item .card-item {border: 1px solid var(--line-gray);padding: 1rem;box-shadow: none;height: 100%;box-sizing: border-box;position: relative;} 

/* 알림 박스 */
.alert-title { display: flex; align-items: center; gap: 8px; font-weight: 500; font-size: 20px;}
.alert-desc { font-weight: 400; font-size: 18px; color: var(--sub); margin-top: 8px; } 

/* 신청자 구성 요약 */
.applicant-summary-card { padding: 20px; } 
.applicant-summary-card .section-title { font-weight: 600; font-size: 32px; line-height: 1.4; color: var(--black); } 
.applicant-summary-row { margin-top: 8px; } 
.applicant-summary-card .summary-title { font-weight: 600; font-size: 32px; line-height: 1.45; text-align: center; color: var(--black); margin-bottom: 8px; } 
.summary-card.card-item { border-radius: 14px; border: 1px solid var(--line-gray); background: var(--white); height: 100%; padding-bottom: 40px; } 
.summary-content { display: flex; flex-direction: column; } 

/* 도넛 차트 */
.donut-chart-wrap { position: relative; width: 100%; height: 210px; /* margin: 8px auto 28px; */}
#genderChart { width: 100%; height: 100%; } 
.donut-center { position: absolute; left: 10%; bottom: 16px; z-index: 2; } 
.donut-label,
.donut-badge { display: inline-flex; align-items: center; padding: 6px 14px; border: 1px solid #ebebeb; border-radius: 999px; background: var(--white); box-shadow: 0 3px 12px rgba(0, 0, 0, 0.08); font-size: 12px; font-weight: 500; color: var(--sub); white-space: nowrap; } 
.donut-label { border-color: #F8717199; box-shadow: 0px 0px 4px 0px #F8717199; } 
.donut-badge { position: absolute; right: 10px; top: 11%; z-index: 2; } 
.legend-list { width: 100%; margin-top: 40px; } 
.legend-list li { display: flex; align-items: center; gap: 10px; padding: 0 14px; border-bottom: 1px solid #C3C3C3; color: var(--sub); font-weight: 500; font-size: 12px; padding: 14px 8px 13px; } 
.legend-list li:first-child { border-top: 1px solid #C3C3C3; } 
.legend-list .dot { width: 15px; height: 15px; border-radius: 50%; } 
.legend-list .dot.female { background: #F87171; } 
.legend-list .dot.male { background: #E9E9E9; } 
.legend-list .percent { margin-left: auto; color: var(--black); font-weight: 600; font-size: 12px; text-align: right; } 
.detail-summary-card.card-item .row-item { width: min(calc(33.333% - 10px), 424px); flex: none; } 

/* 막대 차트 */
.bar-chart-wrap { width: 100%; height: 320px; } 
.bar-row { display: flex; align-items: center; gap: 14px; } 
.bar-label { width: 34px; font-size: 14px; color: #666; flex-shrink: 0; } 
.bar-track { flex: 1; height: 32px; background: transparent; border-radius: 4px; overflow: visible; display: flex; align-items: center; } 
.bar-fill { height: 100%; min-width: 28px; background: #e17674; border-radius: 4px; transition: width 0.3s ease; } 
.bar-fill[style*="width: 0%"] { min-width: 10px; } 
.bar-value { width: 44px; font-size: 14px; color: var(--sub); text-align: left; flex-shrink: 0; } 

/* 지역 리스트 */
.region-list { width: 100%; } 
.region-list li { display: flex; align-items: center; gap: 8px; font-size: 16px; color: var(--sub); border-bottom: 1px dashed #9b9b9b; padding-left: 4px; padding-bottom: 8px; } 
.region-list li + li { margin-top: 20px; } 
.region-list .rank { font-size: 0; width: 18px; height: 18px; } 
.region-list .region { font-weight: 400; font-size: 14px; color: var(--black); } 
.region-list .percent { margin-left: auto; color: var(--black); font-weight: 500; font-size: 15px; text-align: right; } 
.region-note { margin-top: 43px; font-size: 12px; color: var(--info); text-align: right; }

/* 탭 컨텐츠 */
.tab-content_box { display: none; } 
.tab-content_box.active,
#recruit { display: block; } 

/* 모집 페이지 링크 */
.card-item.detail-page-link { padding: 13px 1rem; height: 100%; position: relative; transition: background 0.2s ease; display: flex; } 
.detail-page-link .link-title { font-weight: 600; font-size: 1rem; margin-bottom: 13px; color: var(--black); } 
.detail-page-link .link-desc { font-weight: 400; font-size: 14px; color: var(--sub);}
.detail-page-link .link-arrow { position: absolute; right: 16px; bottom: 13px; width: 24px; height: 24px;} 
.detail-page-link:hover { background: var(--line-gray); background: var(--regular);}

/* 통계 카드 내부 스타일 */
.detail-stat-card .stat-label {font-size: 16px;color: var(--black);font-weight: 500;margin-bottom: 20px;line-height: 1.4;opacity: .7;} 

.detail-stat-card .stat-value strong { font-weight: 600; font-size: 28px; color: var(--black); } 
.detail-stat-card .stat-value { font-weight: 600; font-size: 20px; color: var(--sub); line-height: 1.4; } 
.detail-stat-card .stat-desc { font-weight: 400; font-size: 14px; margin-top: 19px; line-height: 1.4; } 
.detail-summary-card.card-item { height: auto; padding: 24px; } 
.detail-summary-card .section-title { font-weight: 500; font-size: 18px; line-height: 1.4; margin-bottom: 1rem; } 
.detail-summary-card .row-1-1 { justify-content: space-between; } 
.summary01.card-item { padding: 34px 26px 16px; } 
.summary03.card-item { padding: 42px 62px; } 

.summary-title { text-align: center; font-weight: 500; font-size: 1rem; line-height: 1.4; margin-bottom: 8px; }
@media (max-width: 1440px) {
    .donut-center {bottom: 34px;}
    .donut-badge {right: -18px; top: 68px;}
    .detail-tab-wrap { flex-direction: column-reverse; align-items: stretch;}
    .detail-tab-btns{justify-content: flex-end;}
}

@media (max-width: 1100px) {
    .applicant-summary-row {flex-wrap: wrap;}
    .applicant-summary-row > .row-item {flex: 1 1 calc(50% - 8px);}
    .applicant-summary-row > .row-item:last-child {flex-basis: 100%;}
    .detail-summary-card.card-item .row-item{width: 100%;}
}

@media (max-width: 768px) {
    .applicant-summary-row { display: block; } 
    .applicant-summary-row > .row-item + .row-item { margin-top: 16px; } 
    .summary-content { min-height: auto; } 
    .donut-center { left: 0; bottom: 22px; } 
    .donut-badge { right: -10px; top: 44px; } 
    .donut-label,
    .donut-badge { height: 38px; padding: 0 16px; font-size: 15px; } 
    .legend-list li { min-height: 48px; font-size: 14px; } 
    .legend-list .dot { width: 18px; height: 18px; } 
    .legend-list .percent { font-size: 16px; } 
}

@media (min-width: 769px) and (max-width: 1024px){
    .detail-tabs li a{min-width: auto;}
}

/* ── 캠페인 상세 페이지 모바일 반응형 ── */
@media (max-width: 768px) {
    .detail-wrap { flex-direction: column; gap: 16px; }
    .detail-info-row { flex-direction: column; gap: 12px; }
    .detail-product-card { min-width: 0; width: 100%; }
    .detail-status-card { min-width: 0; width: 100%; }

    /* 진행상태 스테퍼: 모바일에서 세로형 */
    .detail-stepper-card {padding: 8px;width: 100%;}
    .progress-stepper {flex-direction: column;align-items: flex-start;gap: 8px;--progress: 60%;}
    .progress-stepper::before {top: 14px;bottom: 14px;left: 14px;right: auto;width: 4px;height: auto;display: none;}
    .progress-stepper::after {top: 14px;left: 14px;right: auto;width: 4px;height: var(--progress);display: none;}
    .progress-stepper li {flex-direction: row;align-items: flex-start;gap: 22px;flex: none;width: 100%;}
    .progress-stepper .step-icon { margin-bottom: 0; flex-shrink: 0; }
    .progress-stepper .step-txt {margin-top: 0;padding-top: 2px;display: flex;align-items: center;gap: 4px;}

    /* 탭 영역: 버튼 위, 탭 아래 (가로 스크롤) */
    .detail-tab-wrap { flex-direction: column-reverse; align-items: stretch; margin-top: 16px; gap: 12px; }
    .detail-tab-btns { justify-content: flex-end; margin-bottom: 0; gap: 4px; }
    .detail-tab-btns .btn-comm { height: 36px; padding: 8px 16px; font-size: 13px; }
    .detail-tab-box{width: 248px; overflow: hidden; transition: width 0.3s ease;}
    .detail-tab-box.active li:nth-child(3){z-index: 11;}
    .detail-tab-wrap { position: relative; }
    .detail-tabs {overflow-x: auto;flex-wrap: nowrap;-webkit-overflow-scrolling: touch;scrollbar-width: none;scroll-behavior: smooth;padding-right: 32px;position: relative;border-radius: 0 30px 0 0;}
    .detail-tabs::-webkit-scrollbar { display: none; }
    /* 한 화면에 정확히 3개 탭만 보이도록 너비 강제 (overlap 8px 보정) */
    .detail-tabs li {flex: none; width: 104px;}
    .detail-tabs li + li {margin-left: -32px;}
    .detail-tabs li a { min-width: 0; width: 100%; height: 40px; font-size: 13px; padding: 0 8px; }
    /* .detail-tabs li + li:nth-child(4){margin-left: 0;} */
    /* 모바일: active 탭이 항상 최상위로 그려져 양옆 탭에 가리지 않게 */
    .detail-tabs.active:has(:nth-child(5)) li.active{z-index: 10;}
    .detail-tabs-next {position: absolute;left: 256px;bottom: 0;width: 28px;height: 40px;background: transparent;border: none;display: flex;align-items: center;justify-content: center;cursor: pointer;z-index: 2;padding: 0;transition: opacity 0.15s ease;} 
    .detail-tabs-next .ico { width: 20px; height: 20px; transition: transform 0.2s ease; }
    .detail-tabs-next.is-prev .ico { transform: rotate(180deg); }

    /* 탭 컨텐츠 박스 */
    .detail-tab-content { padding: 16px; border-radius: 0 14px 14px 14px; }

    /* 알림 박스 */
    .alert-title { font-size: 15px; gap: 6px; }
    .alert-desc { font-size: 13px; margin-top: 4px; }

    /* 모집 페이지 링크 카드 */
    .card-item.detail-page-link { padding: 16px; }
    .detail-page-link .link-title { font-size: 15px; margin-bottom: 8px; }
    .detail-page-link .link-desc { font-size: 13px; }
    .detail-page-link .link-arrow { right: 12px; bottom: 12px; }

    /* 통계 카드: 2x2 그리드 */
    .row-1-1:has(.detail-stat-card) { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
    .row-1-1:has(.detail-stat-card) > .row-item + .row-item { margin-top: 0; }
    .detail-stat-card .stat-label { font-size: 13px; margin-bottom: 8px; }
    .detail-stat-card .stat-value strong { font-size: 18px; }
    .detail-stat-card .stat-value {font-size: 18px;}
    .detail-stat-card .stat-desc { display: none; }
    .row-item .card-item { padding: 14px; }

    /* 신청자 구성 요약 */
    .detail-summary-card.card-item { padding: 16px; }
    .detail-summary-card .section-title { font-size: 16px; margin-bottom: 12px; }
    .detail-summary-card .row-1-1 { display: flex; flex-direction: column; gap: 16px; }
    .detail-summary-card.card-item .row-item { width: 100%; }

    /* Figma 디자인 순서: 성별 → 지역 TOP5 → 연령대 */
    .detail-summary-card .row-1-1 > .row-item:nth-child(1) { order: 1; }
    .detail-summary-card .row-1-1 > .row-item:nth-child(2) { order: 3; }
    .detail-summary-card .row-1-1 > .row-item:nth-child(3) { order: 2; }

    .summary-title { font-size: 14px; }
    .summary01.card-item { padding: 24px 16px 12px; }
    .summary03.card-item { padding: 20px 16px; }
    .bar-chart-wrap { height: 280px; }
    .region-list li { font-size: 14px; padding-bottom: 6px; }
    .region-list li + li { margin-top: 14px; }
    .region-note { margin-top: 16px; font-size: 11px; }

    /* row-3-1 (알림 + 모집페이지) */
    .row-3-1 > .row-item:first-child,
    .row-3-1 > .row-item { flex: 1; }

    /* contents-bbs 내부 패딩 축소 */
    .contents-bbs { padding: 14px; }
    .area-box { padding: 0; }

    /* page-title 영역 */
    .page-title_wrap.type2 { margin-bottom: 16px; }
    .page-title_wrap .page-title { font-size: 18px; }

    .contents-bbs:has(.campaign-table) .page-title_wrap .page-title { display: none; }
    .contents-bbs:has(.campaign-table) .search-form {
        flex-direction: column;
        align-items: stretch;
        gap: 8px;
        width: 100%;
    }
    .contents-bbs:has(.campaign-table) .search-form .search-item:first-child { align-self: flex-end; }
    .contents-bbs:has(.campaign-table) .search-form .search-item:last-child .wrap-input.inner {
        min-width: 0;
        width: 100%;
    }

    /* 캠페인 카드 컨테이너 - 배경 제거하고 각 row가 카드가 되도록 */
    .detail-tab-content .bbs-board-card {
        background: transparent;
        box-shadow: none;
        padding: 0;
    }

    /* 캠페인 테이블 - 카드 레이아웃 */
    .campaign-table,
    .campaign-table tbody { display: block; }
    .campaign-table thead { display: none; }

    .campaign-table tbody tr {
        display: grid;
        grid-template-columns: 1fr 64px;
        grid-template-areas:
            "ord    thumb"
            "title  thumb"
            "row1   row1"
            "row2   row2"
            "row3   row3"
            "row4   row4"
            "row5   row5"
            "btn    btn";
        gap: 6px 12px;
        padding: 16px;
        margin-bottom: 12px;
        background: #fff;
        border-radius: 12px;
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
        border: 1px solid transparent;
    }
    .campaign-table tbody tr.is-selected,
    .campaign-table tbody tr.is-active { border-color: var(--main); }
    .campaign-table tbody tr:hover td { border-bottom-color: transparent; }

    /* td 기본 리셋 (전역 bbs-table 모바일 룰 오버라이드) */
    .campaign-table tbody td { display: block; padding: 0; border: none; height: auto; text-align: left; color: var(--black); font-size: 13px; line-height: 1.45; } 
    .campaign-table tbody td::before { content: none; } 

    /* 기수 */
    .campaign-table tbody td[data-label="기수"] { grid-area: ord; font-size: 12px; color: var(--sub); } 

    /* 캠페인명 */
    .campaign-table tbody td.col-title,
    .campaign-table tbody td[data-label="캠페인명"] { grid-area: title; padding-left: 0; font-size: 14px; font-weight: 500; color: var(--black); line-height: 1.4; white-space: normal; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; } 
    .campaign-table tbody td.col-title a { color: inherit; text-decoration: none; } 

    /* 메인 (썸네일) */
    .campaign-table tbody td[data-label="메인"] { grid-area: thumb; } 
    .campaign-table tbody td[data-label="메인"] .campaign-thumb { width: 64px; height: 64px; margin: 0; border-radius: 8px; } 

    /* 라벨/값 행 - 각각 area 할당 */
    .campaign-table tbody td[data-label="제공"] { grid-area: row1; } 
    .campaign-table tbody td[data-label="채널"] { grid-area: row2; } 
    .campaign-table tbody td[data-label="캠페인기간"] { grid-area: row3; } 
    .campaign-table tbody td[data-label="인원"] { grid-area: row4; } 
    .campaign-table tbody td[data-label="상태"] { grid-area: row5; } 

    /* 라벨/값 공통 스타일 (label = data-label 자동 표시, value = td 텍스트) */
    .campaign-table tbody td[data-label="제공"],
    .campaign-table tbody td[data-label="채널"],
    .campaign-table tbody td[data-label="캠페인기간"],
    .campaign-table tbody td[data-label="인원"],
    .campaign-table tbody td[data-label="상태"] { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 4px 0; font-size: 13px; overflow: hidden; } 
    .campaign-table tbody td[data-label="제공"]::before,
    .campaign-table tbody td[data-label="채널"]::before,
    .campaign-table tbody td[data-label="캠페인기간"]::before,
    .campaign-table tbody td[data-label="인원"]::before,
    .campaign-table tbody td[data-label="상태"]::before { content: attr(data-label); display: block; flex-shrink: 0; margin: 0; min-width: 0; color: var(--sub); font-size: 13px; font-weight: 400; } 
    /* 제공 - 값 우측 정렬 + 줄임 */
    .campaign-table tbody td[data-label="제공"] { white-space: nowrap; text-overflow: ellipsis; } 
    /* 채널 - badges 우측 정렬, 사이즈 축소 */
    .campaign-table tbody td[data-label="채널"] .channel-badges { justify-content: flex-end; gap: 4px; } 
    /* .campaign-table tbody td[data-label="채널"] .channel-badges i { width: 28px; height: 28px; background-size: calc(28px * 18) auto; border-radius: 4px; } */

    /* 상세보기 버튼 - 카드 하단 풀폭 */
    .campaign-table tbody td[data-label="상세"] { grid-area: btn; margin-top: 4px; } 
    .campaign-table tbody td[data-label="상세"] .btn-detail { display: block; width: 100%; min-width: 0; min-height: 28px; padding: 4px 12px; font-size: 14px; font-weight: 500; border-radius: 999px; border-color: var(--line-gray); color: var(--sub); } 
    .campaign-table tbody td[data-label="상세"] .btn-detail:hover { background: var(--main-80); border-color: var(--main-80); color: var(--white); } 
    /* 선택된 카드의 상세보기 = 빨간색 채움 */
    .campaign-table tbody tr.is-selected td[data-label="상세"] .btn-detail,
    .campaign-table tbody tr.is-active td[data-label="상세"] .btn-detail { background: var(--main); color: var(--white); border-color: var(--main); } 

    /* contents-bbs 모바일 padding (카드 사이에 여백) */
    .contents-bbs:has(.campaign-table) {padding: 14px;}
}


/* ===== 캠페인 완료보고서(블로그) ===== */
.report-stat-grid.row-1-1 {gap: 24px;margin-top: 24px;margin-bottom: 24px;}
.detail-stat-card .ico {position: absolute;right: 16px;top: 16px;width: 50px;height: 50px;display: flex;align-items: center;justify-content: center;}

/* 차트 + 키워드 박스 */
.report-chart-row { display: grid; grid-template-columns: minmax(0, 1fr) 328px; gap: 8px; margin-bottom: 24px; }
.report-chart-card.card-item { padding: 24px; height: 405px; border: 1px solid #e6e8eb; box-shadow: none; position: relative; }
.report-chart-header { display: flex; align-items: center; justify-content: space-between; margin-bottom: 24px; }
.report-chart-title { font-size: 18px; font-weight: 400; color: var(--info); letter-spacing: -0.45px; line-height: 1.4; }
.report-chart-tabs { display: flex; gap: 8px; }
.report-chart-tab { width: 88px; height: 30px; border-radius: 999px; border: 1px solid #e3e3e3; background: var(--white); color: var(--sub); font-size: 12px; line-height: 1.45; letter-spacing: -0.3px; cursor: pointer; }
.report-chart-tab.active { background: #e3e3e3; border-color: #a2a2a2; }
.report-chart-canvas-wrap { position: relative; height: calc(100% - 56px); }
.report-chart-canvas-wrap canvas { width: 100% !important; height: 100% !important; }
.chart-hover-tooltip .tt-item .meta span {display: block;}
.report-keyword-card.card-item { padding: 23px 13px; height: 405px; border: 1px solid #e6e8eb; box-shadow: none; }
.report-keyword-card .keyword-title { font-size: 18px; font-weight: 500; color: var(--black); line-height: 1.4; margin-bottom: 17px; }
.keyword-summary { margin-top: 35px; padding: 0 4px; font-size: 14px; color: #606060; font-weight: 500; letter-spacing: -0.35px; line-height: 1.45; }
.keyword-summary .point { color: var(--main); font-weight: 500; }
.report-keyword-card  .region-list{padding-top: 10px;}
.report-keyword-card  .region-list .region{font-size: 13px; color: var(--sub)}
.report-keyword-card  .region-list .percent{font-size: 15px; color: var(--black); font-weight: 500}

/* 등록 콘텐츠 목록 카드 */
.report-content-card.card-item { padding: 23px 19px 14px; border: 1px solid #e6e8eb; box-shadow: none; position: relative; }
.report-content-card .card-title { font-size: 18px; font-weight: 500; color: var(--black); line-height: 1.4; margin-bottom: 24px; letter-spacing: -0.45px; }
.report-popular-btn { position: absolute; top: 23px; right: 19px; height: 32px; min-width: 86px; padding: 8px 12px; border: 1px solid var(--line-gray); border-radius: 999px; background: var(--white); font-size: 14px; color: var(--black); font-weight: 400; cursor: pointer; display: inline-flex; align-items: center; justify-content: center; }
.report-popular-btn:hover { background: var(--regular); }

.report-table tbody tr.is-disabled td {position: relative; pointer-events: none;user-select: none;color: var(--disabled);}
.report-table tbody tr:hover:not(.is-disabled) { border-bottom: 1px solid var(--line-gray); background: linear-gradient(0deg, rgba(0, 0, 0, 0.03) 0%, rgba(0, 0, 0, 0.03) 100%), #FFF; }
.report-table tbody tr.is-disabled td::after { content: ''; position: absolute; top: 50%; left: 0; transform: translateY(-50%); width: 100%; height: 1px; background: var(--disabled); } 
.report-table tbody td.col-line{display: none;}

.report-thumb { display: inline-block; width: 64px; height: 64px; border-radius: 0 20px 0 0; overflow: hidden; vertical-align: middle; }
.report-thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
.report-proof-imgs { display: flex; gap: 8px; justify-content: center; }

.report-review-btn { display: inline-flex; align-items: center; justify-content: center; height: 28px; min-width: 104px; padding: 0 16px; border-radius: 999px; border: 1px solid var(--line-gray); background: var(--white); font-size: 14px; color: var(--black); font-weight: 400; cursor: pointer; }
.report-review-btn:hover { background: var(--regular); }
.report-rate-btn { display: inline-flex; align-items: center; gap: 4px; height: 28px; padding: 0; font-size: 14px; color: var(--black); background: transparent; border: 0; cursor: pointer; line-height: 1.45; }
.report-rate-btn .ico { width: 16px; height: 16px; }

.report-more-btn {display: flex;align-items: center;justify-content: center;width: calc(100% - 32px);margin: 42px auto 0;height: 44px;padding: 12px 16px;background: var(--bg-lightBlue);border: 1px solid #e5e7eb;color: var(--sub);font-size: 14px;cursor: pointer;}
.report-more-btn:hover { background: #f1f3f6; }

/* 차트 hover 시 노출되는 흰색 툴팁 (Chart.js external) */
.chart-hover-tooltip { position: absolute; pointer-events: none; z-index: 5; min-width: 144px; transform: translate(30px, -110px); opacity: 0; transition: opacity 0.15s ease; background: var(
 --white); border-radius: 14px; box-shadow: 0 0 4px rgba(0, 0, 0, 0.25); padding: 12px; } 
.chart-hover-tooltip.is-visible { opacity: 1; }
.chart-hover-tooltip .tt-title { font-size: 12px; font-weight: 600; color: var(--sub); letter-spacing: -0.3px; margin-bottom: 8px; line-height: 1.4; }
.chart-hover-tooltip .tt-list { display: flex; flex-direction: column; gap: 6px; }
.chart-hover-tooltip .tt-item {display: flex;align-items: flex-start;gap: 8px;font-size: 12px;line-height: 1.45;}
.chart-hover-tooltip .tt-dot {width: 10px;height: 10px;border-radius: 50%;flex-shrink: 0;width: 16px;height: 16px;border-radius: 50%;flex-shrink: 0;margin-top: 2px;}
.chart-hover-tooltip .tt-label { color: var(--sub); letter-spacing: -0.3px; }
.chart-hover-tooltip .tt-value { margin-left: auto; color: var(--black); font-weight: 500; margin-top: 4px; letter-spacing: -0.3px; }

/* ===== 캠페인 완료보고서(피드/SNS) ===== */
/* 4열 그리드 (총 8개 카드를 2행으로 배치) */
.report-stat-grid.cols-4 { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; row-gap: 16px; margin-bottom: 16px; margin-top: 26px;}
.report-stat-grid.cols-4 .detail-stat-card.card-item { padding: 16px 20px; height: 120px; border: 1px solid #e6e8eb; box-shadow: none; position: relative; }
.report-stat-grid.cols-4 .stat-label { font-size: 16px; font-weight: 500; color: var(--black); opacity: 0.7; line-height: 1.4; letter-spacing: -0.4px; margin-bottom: 0; }
.report-stat-grid.cols-4 .stat-value { font-size: 28px; font-weight: 600; color: var(--black); line-height: 1.4; letter-spacing: -0.7px; margin-top: 16px; }
.report-stat-grid.cols-4 .stat-icon { position: absolute; right: 16px; top: 16px; width: 50px; height: 50px; display: flex; align-items: center; justify-content: center; color: var(--main); opacity: 0.45; }
.report-stat-grid.cols-4 .stat-icon svg { width: 100%; height: 100%; }

/* 성과 요약 + 데이터 집계 기준 카드 */
.report-summary-card{margin-bottom: 16px;}
.report-summary-card .summary-title { font-size: 18px; font-weight: 500; color: var(--black); line-height: 1.4; margin-bottom: 12px; letter-spacing: -0.45px; text-align: left; }
.report-summary-card .summary-text { font-size: 16px; color: var(--sub); line-height: 1.4; letter-spacing: -0.4px; font-weight: 500; text-align: left; }
.report-summary-card .summary-aside .summary-title {color: var(--sub);font-size: 14px;font-weight: 500;margin-bottom: 4px;}
.report-summary-card .summary-aside .summary-meta { font-size: 13px; color: var(--sub); line-height: 1.6; font-weight: 400; letter-spacing: -0.325px; text-align: left; }
.report-summary-card .summary-aside .summary-meta span { display: block; }
.report-summary-card .card-item.summary-aside {padding: 28px 16px;}

/* 차트 단독 표시 (피드형: 키워드 박스 없음) */
.report-chart-row.full { display: block; }
.report-chart-row.full .report-chart-card.card-item { width: 100%; }

/* 피드형 테이블 컬럼 폭 */
.report-table .col-mainimg { width: 90px; }
.report-table .col-content-text { width: 360px; text-align: left; padding-left: 16px; }
.report-table .col-content-text p { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.report-table .col-engagement { width: 100px; }

/* report 탭 컨텐츠 단독 표시용 */
#report { display: block; }

@media (max-width: 1280px) {
    .report-stat-grid { grid-template-columns: repeat(3, 1fr); }
    .report-stat-grid.cols-4 { grid-template-columns: repeat(3, 1fr); }
    .report-chart-row { grid-template-columns: 1fr; }
    .report-keyword-card.card-item { height: auto; }
}
@media (max-width: 768px) {
    .report-stat-grid { grid-template-columns: repeat(2, 1fr); }
    .chart-hover-tooltip {transform: translate(-67px, -137px);}

    /* 피드형 통계 카드: 2열 그리드 (Figma MO 146x104) */
    .report-stat-grid.cols-4 { grid-template-columns: 1fr 1fr; gap: 16px 8px; margin: 0 0 16px; }
    .report-stat-grid.cols-4 .detail-stat-card.card-item { display: flex; flex-direction: column; padding: 16px; height: 104px; border: 1px solid #e6e8eb; }
    .report-stat-grid.cols-4 .stat-label { font-size: 14px; margin-bottom: 0; letter-spacing: -0.35px; }
    .report-stat-grid.cols-4 .stat-value { font-size: 18px; margin-top: auto; letter-spacing: -0.45px; }
    .report-stat-grid.cols-4 .stat-value strong { font-size: 18px; }
    .report-stat-grid.cols-4 .detail-stat-card .ico { right: 16px; top: auto; bottom: 16px; width: 30px; height: 30px; }
    .report-stat-grid.cols-4 .detail-stat-card .ico.ico-calendar-blue {display: none;}

    /* 성과 요약 / 데이터 집계 기준 카드 */
    .report-summary-card.row-3-1 { gap: 16px; }
    .report-summary-card .summary-title { font-size: 16px; margin-bottom: 8px; letter-spacing: -0.4px; }
    .report-summary-card .summary-text { font-size: 14px; color: #505050; letter-spacing: -0.35px; }
    .report-summary-card .card-item.summary-aside { padding: 16px; }
    .report-summary-card .summary-aside .summary-title { font-size: 14px; margin-bottom: 4px; }
    .report-summary-card .summary-aside .summary-meta { font-size: 13px; }

    /* 피드형 콘텐츠 카드: 메인사진 컬럼 추가 / 인게이지먼트 숨김 (공통 report-table 카드 규칙 위에 보정) */
    .report-table:has(td.col-mainimg) tbody tr { gap: 16px 8px; }
    .report-table:has(td.col-mainimg) tbody td.col-engagement { display: none; }
    .report-table:has(td.col-mainimg) tbody td.col-title { display: block; -webkit-line-clamp: unset; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
    .report-table:has(td.col-mainimg) tbody td.col-title a { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: #111; }
    .report-table:has(td.col-mainimg) tbody td.col-mainimg {order: 4;flex-basis: 100%;}
    .report-table:has(td.col-mainimg) tbody td.col-mainimg::before { content: '메인사진'; display: block; width: 64px; text-align: center; margin-bottom: 4px; color: var(--sub); font-size: 12px; font-weight: 400; letter-spacing: -0.3px; }
    .report-table:has(td.col-mainimg) tbody td.col-mainimg .campaign-thumb { margin: 0; }
    .report-table:has(td.col-mainimg) tbody td.col-date { order: 5; flex: 0 0 auto; width: auto; }
    .report-table:has(td.col-mainimg) tbody td.col-comment { order: 6; flex: 0 0 auto; width: auto; }
    .report-table:has(td.col-mainimg) tbody td.col-like { order: 7; flex: 0 0 auto; width: auto; }
    .report-table:has(td.col-mainimg) tbody td.col-content { order: 8; flex: 1 0 calc(50% - 4px); }
    .report-table:has(td.col-mainimg) tbody td.col-rate { order: 9; flex: 1 0 calc(50% - 4px); }
}
@media (max-width: 768px) {
    /* 구매평형 콘텐츠 카드: 인증 이미지 3개 + 평가하기 단일 버튼 (Figma MO 995-34132 참고) */
    .report-table:has(td.col-auth3) tbody tr { padding-bottom: 16px; }
    .report-table:has(td.col-auth3) tbody td.col-nickname { font-size: 14px; }
    .report-table:has(td.col-auth3) tbody td.col-title { display: block; -webkit-line-clamp: unset; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; flex-basis: 100%; width: 100%; }
    .report-table:has(td.col-auth3) tbody td.col-title a { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: #111; }
    .report-table:has(td.col-auth3) tbody td.col-auth1 { order: 4; }
    .report-table:has(td.col-auth3) tbody td.col-auth2 { order: 5; }
    .report-table:has(td.col-auth3) tbody td.col-auth3 { order: 6; width: 64px; margin-left: 4px; }
    .report-table:has(td.col-auth3) tbody td.col-auth3::before { content: '인증3'; }
    .report-table:has(td.col-auth3) tbody td[class*=col-auth]::before { color: #767676; }
    .report-table:has(td.col-auth3) tbody tr td.col-date { order: 7; flex-basis: 100%; width: 100%; margin-right: 0;}
    .report-table:has(td.col-auth3) tbody td.col-rate { order: 8; position: static; width: 100%; left: auto; bottom: auto; margin: 0; transform: none; }
    .report-table:has(td.col-auth3) tbody td.col-line{order: 6;}
}

/* Store submit page */
.store-submit-shell { display: flex; flex-direction: column; gap: 16px; } 
.ss-head { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 22px 28px; border: 1px solid rgba(239, 55, 57, 0.08); } 
.ss-head__title { color: var(--black); font-size: 18px; font-weight: 600; line-height: 1.45; } 
.ss-head__meta { display: flex; gap: 8px; flex-wrap: wrap; } 
.ss-head__badge { display: inline-flex; align-items: center; height: 34px; padding: 0 14px; border-radius: 999px; background: #f7f7fa; color: var(--sub); font-size: 13px; font-weight: 500; } 
.ss-card { padding: 32px 40px; } 
.ss-choice { display: grid; gap: 16px; margin-bottom: 40px; } 
.ss-choice__head { font-weight: 600; font-size: 20px; line-height: 1.4; } 
.ss-choice__label { display: inline-flex; align-items: center; gap: 6px; color: var(--black); font-size: 20px; font-weight: 700; } 
.ss-choice__info { display: inline-flex; align-items: center; justify-content: center; width: 18px; height: 18px; border: 1px solid #cfd3dc; border-radius: 50%; color: #8a90a2; font-size: 11px; font-weight: 700; line-height: 1; } 
.ss-choice__desc { color: var(--info); margin-top: 4px; font-weight: 400; font-size: 12px; } 
.ss-choice__cards { display: flex; gap: 16px; align-items: flex-end; } 
.ss-type { position: relative; width: 224px; min-height: 112px; padding: 16px; border-radius: 18px; background: var(--regular); color: var(--sub); text-align: left; display: flex; align-items: center; justify-content: center; flex-direction: column; gap: 4px; } 
.ss-type.active { background: linear-gradient(180deg, #ff5052 0%, #f73335 100%); border-color: #f73335; color: var(--white); } 
.ss-type.active i { filter: var(--filter-white); } 
.ss-type__title { display: block; font-weight: 600; font-size: 18px; line-height: 1.4; text-align: center; vertical-align: middle; } 
.ss-type__sub { display: block; margin-top: 6px; font-size: 13px; opacity: 0.92; } 
.ss-type__tip { position: absolute; left: -56px; top: -12px; padding: 12px 14px; border-radius: 12px; background: var(--white); color: var(--sub); font-size: 12px; line-height: 1.45; box-shadow: 0 14px 30px rgba(20, 20, 43, 0.12); } 
.ss-choice__notice { width: 100%; border: 1px solid var(--line-gray); border-radius: 14px; background: var(--white); } 
.ss-choice__notice-text { font-weight: 600; font-size: 16px; line-height: 1.4; } 
.choice-hd { display:flex; align-items: center; position: relative; padding: 2rem; width: 100%; } 
.choice-hd::after { content: ""; position: absolute; right: 2rem; top: 2rem; width: 24px; height: 24px; background-size: cover; background-repeat: no-repeat; background-position: center; background-image: url('../img/ico_arrow.svg'); } 
.choice-hd.active::after { transform: rotate(180deg); } 
.choice-hd.active { padding-bottom: 0; } 
/* 3차 피드백 s16 (20261011): 업종 안내 드롭다운 슬라이드 모션 — grid-rows 전환(콘텐츠 높이 무관 양방향 균일, max-height 방식은 닫힘 초반 지연 발생해 교체 2026-10-11) */
.choice-bd { padding: 12px 2rem 2rem; display: grid; grid-template-rows: 0fr; padding-top: 0; padding-bottom: 0; opacity: 0; transition: grid-template-rows .25s ease, padding-top .25s ease, padding-bottom .25s ease, opacity .25s ease; }
.choice-bd > * { overflow: hidden; min-height: 0; }
.choice-hd.active + .choice-bd { grid-template-rows: 1fr; padding-top: 12px; padding-bottom: 2rem; opacity: 1; }
.info-list > li { font-weight: 400; font-size: 14px; color: var(--sub); } 
.info-list > li.dash::before { content: ""; display: inline-block; vertical-align: top; width: 2px; height: 2px; background: var(--sub); border-radius: 50%; margin-right: 4px; margin-top: 9px; } 
.info-list > li + li { margin-top: 6px; } 


.ss-form { } 
.form-section {padding: 40px 0;display: flex;gap: 24px;flex: 1;min-width: 0;} 
.form-section:first-child { padding-top: 0; } 
.form-section + .form-section { border-top: 1px solid var(--line-gray); } 
.form-section__head { min-width: 132px; flex: none; } 
.form-section__title { color: var(--black); font-weight: 600; font-size: 20px; line-height: 1.4; } 
.form-section__desc { margin-top: 4px; color: var(--info); font-weight: 400; font-size: 12px; } 
.form-subhead { margin-top: 16px; margin-bottom: 8px; color: var(--sub); display: flex; align-items: center; gap: 4px; font-weight: 400; font-size: 14px; } 
.form-subhead::after { content: ''; width: 457px; height: 1px; background: var(--line-gray); } 
.form-subhead:first-of-type { margin-top: 0; } 
.input-icon-btn { position: absolute; right: 12px; top: 50%; transform: translateY(-50%); background: none; border: none; padding: 0; cursor: pointer; display: flex; align-items: center; justify-content: center; } 
.wrap-input:has(.input-icon-btn) .form-control { padding-right: 40px; } 
.manager-form__helper { display: none; font-size: 14px; font-weight: 500; } 
.manager-form__stack.is-error .manager-form__helper { display: block; } 
.manager-form__email {display: flex;gap: 4px;align-items: center;max-width: 652px;width: 100%;} 
.manager-form__email-input {min-width: 0;max-width: 336px;flex: 1;} 
.manager-form__email-at { color: var(--sub); line-height: 1; font-weight: 400; font-size: 14px; } 
.manager-form__email-select { position: relative; min-width: 0; } 
.manager-form__email-select .form-select { width: 100%; height: 48px; padding: 0 40px 0 16px; border: 1px solid var(--line-gray); border-radius: 10px; background: var(--white); color: var(--info); font-size: 14px; line-height: 1.4; transition: border-color 0.2s ease, box-shadow 0.2s ease; } 
.manager-form__email-select .form-select:focus { color: var(--black); }
/* 재검수 p14 (20260819): 업체추가 이메일 행 — 피그마 실측 로컬 295px + @ + 도메인 셀렉트 196px (gap 4, 행 512px) */
.store-submit-page .manager-form__email-input { max-width: 295px; }
.store-submit-page .manager-form__email .select-wrap.small { flex: 0 0 196px; }
/* 재검수 p14: "직접입력" 선택 시 셀렉트 자리를 대체하는 도메인 입력칸 (겹침 제거) */
.manager-form__email-domain-input { flex: 0 0 196px; min-width: 0; }
.manager-form__email-domain-input .form-control { width: 100%; }
.manager-form__verify { display: none; } 
.manager-form__address .wrap-input .form-control { height: 36px; }
.manager-form__address .btn-comm.tertiary {height: 36px;min-height: 36px;padding: 0 14px;}
/* 주소 행이 좁은 화면에서 영역 밖으로 넘치지 않게 — 고정폭(512/336)을 유연 폭으로, 최대값은 유지 (2026-10-11 사용자 지적: 위저드 매장주소 상세입력 넘침) */
.manager-form__address { width: 100%; min-width: 0; } /* column flex 안에서 내용폭(856)으로 커지는 것 방지 — 부모 폭에 맞춤 */
.manager-form__address .wrap-input.flex { min-width: 0; }
.manager-form__address .wrap-input.flex .form-control { flex: 1 1 auto; min-width: 0; max-width: 512px; }
.manager-form__address .wrap-input.flex .form-control.small { max-width: 336px; }

.file-wrap { display: flex; align-items: center; gap: 12px; } 
.file-upload__input { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; } 
.file-upload__display {position: relative;max-width: 512px;width: 100%;height: 48px;padding: 0 56px 0 16px;border: 1px solid var(--line-gray);border-radius: 10px;background: var(--regular);display: flex;align-items: center;}
/* 피드백 S7: 사업자등록증 파일박스 너비를 사업자명/번호 입력박스와 동일(512px)하게 — 플렉스 수축으로 353px로 좁아지던 문제 (피그마 내 업체정보제출_260622 실측 512px) */
.store-submit-page .file-upload__display { flex: 0 0 512px; }
.file-upload__text { width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: var(--info); font-size: 14px; color: var(--disabled); } 
.file-wrap.is-filled .file-upload__text { color: var(--black); } 
.file-upload__remove { position: absolute; top: 50%; right: 16px; transform: translateY(-50%); width: 20px; height: 20px; z-index: 2; } 
/* Date Range Picker Custom Styles */
.date-range-picker { position: relative; } 
.date-range-picker__inputs { display: flex; align-items: center; gap: 12px; } 
.date-range-picker__separator { color: var(--info:); font-size: 14px; } 
.date-range-picker__trigger { display: flex; align-items: center; justify-content: space-between; gap: 8px; cursor: pointer; background: #fff; text-align: left; } 
.date-range-picker__trigger .ico { transition: transform 0.2s; } 
.date-range-picker__trigger.active .ico { transform: rotate(180deg); } 
/* Flatpickr Custom Theme */
.flatpickr-calendar { border-radius: 12px; box-shadow: 0 4px 20px rgba(0,0,0,0.1); border: 1px solid var(--line-gray); } 
.flatpickr-months { padding: 8px 0; } 
.flatpickr-current-month { font-size: 16px; font-weight: 600; } 
.flatpickr-day.selected,
.flatpickr-day.startRange,
.flatpickr-day.endRange { background: var(--main:); border-color: var(--main:); } 
.flatpickr-day.selected:hover,
.flatpickr-day.startRange:hover,
.flatpickr-day.endRange:hover { background: #d42f31; border-color: #d42f31; } 
.flatpickr-day.inRange { background: rgba(239, 55, 57, 0.15); border-color: transparent; box-shadow: -5px 0 0 rgba(239, 55, 57, 0.15), 5px 0 0 rgba(239, 55, 57, 0.15); } 
.flatpickr-day.today { border-color: var(--main:); } 
.flatpickr-day.today:hover { background: rgba(239, 55, 57, 0.1); border-color: var(--main:); } 
/* 숨겨진 range picker input */
.date-range-picker .flatpickr-input { position: absolute; visibility: hidden; width: 0; height: 0; padding: 0; margin: 0; border: 0; } 
.ss-schedule { margin-top: 24px; display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(320px, 0.9fr); gap: 18px; align-items: start; } 
.ss-schedule__controls { display: grid; gap: 18px; } 
.schedule-picker { padding: 18px; border: 1px solid #f0f0f4; box-shadow: 0 16px 32px rgba(20, 20, 43, 0.06); } 
.schedule-picker__header strong { color: var(--black); font-size: 16px; font-weight: 700; } 
.schedule-picker__header p { margin-top: 4px; color: var(--info); font-size: 13px; } 
.schedule-picker__week,
.schedule-picker__grid { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 8px; } 
.schedule-picker__week { margin-top: 18px; margin-bottom: 10px; } 
.schedule-picker__week span { text-align: center; color: var(--gray600); font-size: 12px; font-weight: 600; } 
.schedule-day { width: 100%; aspect-ratio: 1; border: 1px solid #f0f0f4; border-radius: 12px; background: #fff; color: var(--black); font-size: 13px; font-weight: 600; } 
.schedule-day.selected { border-color: #ffc9ca; background: #fff1f1; color: var(--main); } 
.schedule-day.disabled { background: #fff6f6; color: #d08e8e; } 
.schedule-day.muted { color: #c2c2c8; } 
.schedule-picker__legend { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 16px; color: var(--sub); font-size: 12px; } 
.schedule-picker__legend span { display: inline-flex; align-items: center; gap: 6px; } 
.schedule-chip { width: 12px; height: 12px; border-radius: 50%; } 
.schedule-chip--open { background: #ffb6b6; } 
.schedule-chip--closed { background: #ffdede; } 
.schedule-chip--inactive { background: #d9d9e2; } 
.operation-board { padding: 12px; border: 1px solid #f0f0f4; } 
.operation-board__row { display: grid; grid-template-columns: minmax(88px, 0.8fr) repeat(3, minmax(0, 1fr)); gap: 10px; align-items: center; padding: 10px; border-radius: 12px; } 
.operation-board__row + .operation-board__row { margin-top: 6px; } 
.operation-board__row span { color: var(--sub); font-size: 14px; font-weight: 600; } 
.operation-board__row--head { background: #fafafb; } 
.operation-board__row--head span { color: var(--black); font-size: 12px; font-weight: 700; } 
.ss-actions { margin-top: 96px; } 
.ss-actions__caption { font-weight: 400; text-align: center; font-size: 14px; color: var(--info); margin-bottom: 14px; } 
.ss-actions__buttons { display: flex; gap: 10px; justify-content: center; } 
.ss-actions__buttons.right { justify-content: flex-end; } 
.ss-actions__buttons.space-between { justify-content: space-between; } 
.ss-actions .btn-comm.btn-disabled { background: var(--regular); width: 256px; height: 42px; border-radius: 10px; font-weight: 500; font-size: 1rem; line-height: 1.4; text-align: center; color: var(--disabled); } 


@media (max-width: 1280px) {
    .ss-schedule {grid-template-columns: 1fr;}
    .form-subhead::after{flex: 1;}
}

@media (max-width: 960px) {
    .ss-head,
    .ss-actions { flex-direction: column; align-items: flex-start; } 
    .ss-choice__cards { flex-direction: column; align-items: stretch; } 
    .ss-type { width: 100%; } 
    .ss-type__tip { position: static; display: inline-block; margin-bottom: 12px; } 
    .ss-type__badge { top: 12px; } 
    .ss-actions__buttons { width: 100%; } 
    .ss-actions__buttons .btn-comm { flex: 1; } 
    .operation-board__row { grid-template-columns: 1fr; } 
    .operation-board__row--head { display: none; } 
}

@media (max-width: 768px) {
    .ss-card,
    .ss-head { padding: 18px; } 
    .ss-choice__label { font-size: 18px; } 
    .manager-form__line { flex-direction: column; align-items: stretch; } 
}

/* ── Store List ── */
.store-list { padding: 24px; }
/* 3차 피드백 s15(기요청): 내 업체목록 흰 카드 높이 700px 고정 — 시안은 업체 0개여도 700px 유지 (모바일 제외) */
.store-submit-page .store-list { min-height: 700px; }
@media (max-width: 768px) { .store-submit-page .store-list { min-height: 0; } }
.store-list__tit { display: flex; align-items: center; font-weight: 500; font-size: 20px; line-height: 1.4; margin-bottom: 24px; gap: 4px; }
.store-list__tit .count { color: var(--main); margin-left: 4px; } 
.store-list__tit .ico-arrow-right { /* width: 16px; */
 /* height: 16px; */}
.store-list__items { display: flex; flex-direction: column; gap: 8px; } 
.store-list__item { }
.store-item__btn {display: flex;align-items: center;gap: 1rem;max-width: 464px;width: 100%;padding: 1rem;background: #fff;border: 1px solid var(--line-gray);border-radius: 10px;text-decoration: none;transition: all 0.2s ease;} 
.store-item__btn:not([disabled]):hover { /* border-color: var(--main); */
 /* background: #fff; */}
.store-item__btn[disabled] { cursor: default; } 
.store-item__l { display: flex; align-items: center; gap: 16px; } 
.store-item__thumb { width: 40px; height: 40px; border-radius: 50%; overflow: hidden; flex-shrink: 0; background: #fff; border: 1px solid #EBEBEB; /* cursor: pointer; */
 position: relative; } 
.store-item__thumb.placeholder { display: flex; align-items: center; justify-content: center; background: var(--regular); } 
.store-item__file { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; } 
.store-item__thumb img { width: 100%; height: 100%; object-fit: cover; } 
.store-item__tit { color: var(--black); font-weight: 500; font-size: 16px; line-height: 1.4; display: flex; align-items: center; gap: 4px; } 
.state-ing { font-weight: 400; font-size: 12px; text-align: center; background: #00960A; color: #fff; padding: 4px 20px; border-radius: 4px; } 

.store-item__btn.disabled { background: var(--regular); } 

.store-item__btn.disabled .store-item__thumb { background: var(--line-gray); } 

.store-item__btn.disabled .ico-imgPlus,
.store-item__btn.disabled .ico-arrow-right { filter: brightness(0) saturate(100%) invert(75%) sepia(11%) saturate(174%) hue-rotate(202deg) brightness(87%) contrast(92%); } 

/* Store Add Card */

.store-item__btn.store-add { margin-top: 40px; } 
.store-add__txt { font-size: 14px; color: var(--sub); } 
.store-add__txt strong {display: block;font-size: 16px;color: var(--black);font-weight: 500;} 

/* Inquiry page */
.inquiry-page { width: 100%; } 
.inquiry-sr { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; } 
.inquiry-page__title { color: var(--black); font-size: 24px; font-weight: 600; line-height: 1.4; } 
.inquiry-card { flex: 1; min-height: 0; padding: 34px 38px 30px; } 
.inquiry-card__head { padding-bottom: 18px; border-bottom: 2px solid var(--black); } 
.inquiry-card__title { color: var(--black); font-size: 20px; font-weight: 600; line-height: 1.4; } 
.inquiry-card .ss-form { display: flex; min-height: calc(100% - 50px); flex-direction: column; } 
.form-section.inquiry { padding: 24px 0 0; gap: 30px; border-top: 0; } 
.form-section.inquiry .form-section__head { min-width: 132px; } 
.form-section.inquiry .form-grid { flex: 1; gap: 16px; } 
.form-section.inquiry .form-field { display: flex; gap: 16px; flex-direction: row; } 
.form-section.inquiry .form-field.inquiry-field--full { align-items: start; } 
.form-section.inquiry .form-label { margin-bottom: 0; min-width: 150px; justify-content: flex-start; display: flex; } 
.form-section.inquiry .form-label::after { position: static; } 
.form-section.inquiry .form-field.inquiry-field--full .form-label { align-self: start; } 
.form-section.inquiry .wrap-input .form-control {
 width: 100%;
 height: 48px;
 border-radius: 10px;
 } 
.wrap-input.inquiry-count-field {max-width: 503px;width: 100%;} 
.wrap-input.inquiry-count-field .form-control { width: 100%; padding-right: 64px; } 
.wrap-input.inquiry-textarea {position: relative;max-width: 768px;width: 100%;} 
.wrap-input.inquiry-textarea .form-control { width: 100%; } 
.inquiry-control--textarea { display: block; height: 453px; padding: 20px 18px 42px; resize: none; } 
.form-section.inquiry .manager-form__email { grid-template-columns: 290px auto 192px; max-width: none; }
.form-section.inquiry .manager-form__email .form-control { width: 100%; }
/* 재검수 p42 (20260819): 피그마 문의하기_260319 실측 — 로컬 295px + 도메인 셀렉트 196px (셀렉트가 flex:1로 956px까지 늘어나던 것 수정) */
.form-section.inquiry .manager-form__email-input { flex: 0 0 295px; }
.form-section.inquiry .manager-form__email .select-wrap.small { flex: 0 0 196px; }
/* 가입화면(signup-fields)은 기존 확정 레이아웃 유지 (p42 적용 제외) */
.form-section.inquiry.signup-fields .manager-form__email-input { flex: 1; }
.form-section.inquiry.signup-fields .manager-form__email .select-wrap.small { flex: 1; }
.inquiry-select { width: 330px; } 
.inquiry-select--email { width: 192px; } 
.form-section.inquiry .select-wrap .select-btn { width: 100%; height: 46px; padding: 0 15px; border-radius: 8px; justify-content: space-between; color: var(--info); font-size: 14px; } 
.form-section.inquiry .select-wrap .search-menu { padding: 8px; border: 1px solid var(--line-gray); border-top: 0; } 
.form-section.inquiry .select-wrap.open .select-btn { border-radius: 8px 8px 0 0; } 
.form-section.inquiry .select-wrap.open .search-menu { border-radius: 0 0 8px 8px; } 
.form-section.inquiry .select-wrap .select-btn.selected,
.form-section.inquiry .select-wrap .search-menu li a.active { color: var(--black); } 
.form-section.inquiry .wrap-input .form-control.inquiry-control--textarea { height: 463px; padding: 20px; } 
.inquiry-count { position: absolute; right: 14px; top: 50%; transform: translateY(-50%); color: var(--info); font-size: 13px; font-weight: 400; line-height: 1; pointer-events: none; } 
.inquiry-count--textarea { top: auto; right: 18px; bottom: 18px; transform: none; } 
.inquiry-upload-list { display: flex; flex-wrap: wrap; gap: 8px; } 
.inquiry-upload-slot { position: relative; width: 120px; height: 120px; overflow: hidden; border: 1px solid var(--line-gray); border-radius: 8px; background: var(--white); } 
.inquiry-upload-slot.is-disabled { background: var(--regular); } 
.inquiry-upload-input { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; } 
.inquiry-upload-label { display: flex; width: 100%; height: 100%; align-items: center; justify-content: center; background-position: center; background-repeat: no-repeat; background-size: cover; } 
.inquiry-upload-slot.is-filled:not(.has-preview) .inquiry-camera { display: none; } 
.inquiry-upload-slot.is-disabled .inquiry-upload-label { cursor: default; } 
.inquiry-upload-remove { position: absolute; top: 8px; right: 8px; z-index: 2; display: none; width: 22px; height: 22px; border-radius: 50%; background: #8F8F8F; } 
.inquiry-upload-slot.is-filled .inquiry-upload-remove { display: block; } 
.inquiry-upload-remove::before,
.inquiry-upload-remove::after { content: ""; position: absolute; top: 50%; left: 50%; width: 11px; height: 2px; border-radius: 999px; background: var(--white); } 
.inquiry-upload-remove::before { transform: translate(-50%, -50%) rotate(45deg); } 
.inquiry-upload-remove::after { transform: translate(-50%, -50%) rotate(-45deg); } 
.inquiry-camera { position: relative; display: inline-flex; width: 31px; height: 22px; border: 1.5px solid #8D8F98; border-radius: 3px; } 
.inquiry-camera::before { content: ""; position: absolute; top: -7px; left: 8px; width: 13px; height: 7px; border: 1.5px solid #8D8F98; border-bottom: 0; border-radius: 4px 4px 0 0; } 
.inquiry-camera::after { content: ""; position: absolute; top: 6px; left: 10px; width: 8px; height: 8px; border: 1.5px solid #8D8F98; border-radius: 50%; } 
.inquiry-upload-slot.is-disabled .inquiry-camera,
.inquiry-upload-slot.is-disabled .inquiry-camera::before,
.inquiry-upload-slot.is-disabled .inquiry-camera::after { border-color: var(--gray400); } 
.inquiry-card .ss-actions { margin-top: auto; padding-top: 56px; } 
.inquiry-card .ss-actions__buttons { gap: 16px; } 

@media (max-width: 1024px) {
    .inquiry-card { padding: 28px 24px; } 
    .form-section.inquiry { gap: 20px; } 
    .form-section.inquiry .form-field { grid-template-columns: 120px minmax(0, 1fr); gap: 20px; } 
    .wrap-input.inquiry-textarea { width: min(752px, 100%); } 
}

@media (max-width: 768px) {
    .inquiry-card { min-height: auto; padding: 22px 18px; } 
    .inquiry-card .ss-form {min-height: auto;padding: 0;box-shadow: none;} 
    .ss-form {display: flex;flex-direction: column;gap: 16px;background: #fff;border-radius: 14px;background: var(--white);box-shadow: 6px 6px 54px 0 rgba(0, 0, 0, 0.05);padding: 16px 26px 24px 26px;} 
    .form-section.inquiry { flex-direction: column; padding-top: 20px; } 
    .form-section.inquiry .form-section__head { min-width: 0; } 
    .form-section.inquiry .form-field {grid-template-columns: 1fr;gap: 8px;flex-direction: column;} 
    .form-section.inquiry .form-label,
    .form-section.inquiry .form-field.inquiry-field--full .form-label { align-self: start; } 
    .wrap-input.inquiry-count-field,
    .wrap-input.inquiry-textarea,
    .inquiry-select { width: 100%; } 
    .form-section.inquiry .wrap-input .form-control {width: 100%;height: 36px;padding: 0 12px;font-size: 13px;max-width: 100%;flex: 1;} 
    .form-section.inquiry .manager-form__email { grid-template-columns: 1fr; gap: 8px; } 
    .form-section.inquiry .manager-form__email-at {/* display: none; */} 
    .inquiry-select--email { width: 100%; } 
    .inquiry-control--textarea { height: 360px ; } 
    .inquiry-upload-slot { width: calc((100vw - 92px) / 3); height: calc((100vw - 92px) / 3); min-width: 88px; min-height: 88px; max-width: 120px; max-height: 120px; } 
    .inquiry-card .ss-actions { padding-top: 40px; } 
    .inquiry-card .btn-comm { flex: 1; width: auto; padding: 0;} 

    /* ── 업종 선택 카드 ── */
    /* store-submit 컨테이너 */
    .store-submit-page{padding: 16px 14px;flex: none;}
    .store-submit-shell{ gap: 12px; }

    /* ss-card: 배경 제거 → 각 섹션이 카드가 됨 */
    .store-submit-page .ss-card  {
        background: transparent !important;
        box-shadow: none !important;
        padding: 0;
    }
    /* store-submit 컨테이너 */
    .store-submit-page .ss-form{padding: 0; background: transparent; box-shadow: none;}
    .store-submit-page .ss-choice { background: #fff; border-radius: 14px; box-shadow: 6px 6px 54px 0 rgba(0,0,0,0.05); padding: 24px 26px 16px; gap: 12px; margin-bottom: 16px; } 
    .ss-choice__head { font-size: 16px; font-weight: 500; display: flex; align-items: baseline; gap: 4px; flex-direction: column; } 

    /* 업종 버튼: 2열 나란히 (960px 스택 override) */
    .store-submit-page .ss-choice__cards { flex-direction: row ; gap: 8px; } 
    .store-submit-page .ss-type { flex: 1 ; width: auto ; min-height: 56px; height: 56px; border-radius: 14px; flex-direction: row; gap: 6px; padding: 12px; font-size: 12px; } 
    .store-submit-page .ss-type .ico.xlarge { width: 20px; height: 20px; } 
    .store-submit-page .ss-type__title { font-size: 12px; font-weight: 400; line-height: 1.45; text-align: center; } 

    /* 업종 알림 박스 */
    .choice-hd { padding: 16px 9.5px; padding-right: 27.5px; align-items: center; } 
    .choice-hd::after { right: 9.5px; top: 18px; width: 16px; height: 16px; } 
    .choice-hd .ico.medium.ico-warning { width: 12px; height: 12px; } 
    .ss-choice__notice-text { font-size: 13px; font-weight: 500; letter-spacing: -0.33px; } 
    .choice-bd { padding: 8px 9.5px 16px; padding-top: 0; padding-bottom: 0; }
    .choice-hd.active + .choice-bd { padding-top: 8px; padding-bottom: 16px; } /* 3차 피드백 s16: 모바일 개방 패딩 */ 
    .info-list > li { font-size: 12px; letter-spacing: -0.25px; } 

    /* ── 폼 섹션: 각각 카드 ── */
    .store-submit-page .form-section { background: #fff; border-radius: 14px; box-shadow: 6px 6px 54px 0 rgba(0,0,0,0.05); padding: 16px 26px 20px; flex-direction: column; gap: 8px; border-top: none ; } 
    .store-submit-page .form-section + .form-section { border-top: none; } 
    .form-section__head { min-width: 0; } 
    .form-section__title { font-size: 16px; font-weight: 500; } 
    .form-section__desc { font-size: 12px; margin-top: 4px; } 
    .store-submit-page .form-grid { gap: 16px; } 

    /* ── 입력 필드 축소 ── */
    .store-submit-page .wrap-input .form-control,
    .store-submit-page .wrap-input .form-select { height: 36px; font-size: 13px; padding: 8px 12px; border-radius: 10px; } 
    .store-submit-page .wrap-input .form-control::placeholder { font-size: 13px; } 

    /* ── 버튼 축소 ── */
    .store-submit-shell .btn-comm.primary:disabled {background: var(--main); color: var(--white); max-width: 256px; font-size: 15px;}
}

/* ===== 신규 캠페인 등록 ===== */
.cregist-layout { display: flex; gap: 24px; align-items: stretch; } 
.cregist-main { flex: 1; min-width: 0; padding: 32px 40px 40px; position: relative; display: flex; flex-direction: column; gap: 40px; } 
.cregist-main .form-section { padding: 20px 0; } 
.cregist-main .form-section:first-child { padding-top: 0; } 
.cregist-main .form-section + .form-section { border-top: 0; } 
.cregist-main .form-section__title { font-size: 18px; font-weight: 500; } 
.cregist-aside { width: 372px; flex-shrink: 0; display: flex; flex-direction: column; gap: 43px; } 


/* 폼 행 */

/* 소제목 구분선 */
.cform-subhead { display: flex; align-items: center; gap: 8px; max-width: 512px; font-size: 14px; color: var(--sub); letter-spacing: -0.35px; } 
.cform-subhead::after { content: ''; flex: 1; height: 1px; background: #e5e5ec; } 

/* 채널 버튼 */
.cch-btn-group { display: flex; gap: 8px; flex-wrap: wrap; } 
.cch-btn { display: flex; align-items: center; gap: 4px; height: 48px; padding: 0 16px; border-radius: 10px; border: 1px solid #e5e5ec; background: #fff; cursor: pointer; font-size: 13px; color: var(--sub); font-family: inherit; letter-spacing: -0.325px; transition: background 0.15s, border-color 0.15s, color 0.15s; } 
.cch-btn img { width: 20px; height: 20px; object-fit: contain; flex-shrink: 0; } 
.cch-btn.is-active { color: #fff; background: #EF3739CC; border-color: #EF3739CC; } 
.cch-btn.is-disabled { background: var(--regular); border-color: #e5e5ec; color: var(--disabled); cursor: default; pointer-events: none; } 
.cch-add-btn { display: flex; align-items: center; gap: 4px; height: 48px; padding: 0 16px; border-radius: 10px; border: 1px solid #e5e5ec; background: #fff; cursor: pointer; font-size: 13px; color: var(--sub); font-family: inherit; letter-spacing: -0.325px; } 
.cch-add-btn:hover { background: var(--bg-lightBlue); } 

/* 선택 조합 안내 */
.combo-notice:not(:first-child) { margin-top: 16px; } 
.combo-notice { background: var(--system-orange); border-radius: 14px; padding: 16px; display: flex; flex-direction: column; gap: 4px; width: 100%; } 
.combo-notice__hd { display: flex; align-items: center; gap: 4px; font-size: 14px; font-weight: 500; color: var(--sub); letter-spacing: -0.35px; } 
.combo-notice__body { font-size: 14px; color: var(--sub); letter-spacing: -0.35px; } 
.combo-notice.warning{padding: 24px 48px;}
.combo-notice.warning .combo-notice__hd{gap: 8px; align-items: flex-start; color: var(--black); font-size: 16px; font-weight: 500; line-height: 140%; letter-spacing: -0.4px;}


/* 체험 방식 버튼 */
.cmethod-btn-group { display: flex; gap: 8px; flex-wrap: wrap; } 
.cmethod-btn { display: flex; align-items: center; gap: 6px; height: 48px; padding: 0 16px; border-radius: 10px; border: 1px solid #e5e5ec; background: #fff; cursor: pointer; font-size: 13px; color: var(--sub); font-family: inherit; letter-spacing: -0.325px; transition: background 0.15s, border-color 0.15s, color 0.15s; } 
.cmethod-btn img { width: 32px; height: 32px; object-fit: contain; flex-shrink: 0; } 
.cmethod-btn.is-active { background: rgba(239,55,57,0.8); border-color: rgba(239,55,57,0.8); color: #fff; } 
.cmethod-btn:hover:not(.is-active) { background: var(--bg-lightBlue); } 

/* 결제카드 */
.cform-card-input { height: 48px; background: #fff; border: 1px solid #e5e5ec; border-radius: 10px; padding: 0 16px; display: flex; align-items: center; gap: 12px; width: 336px; box-sizing: border-box; flex-shrink: 0; } 
.cform-card-brand { height: 24px; width: 40px; overflow: hidden; flex-shrink: 0; display: flex; align-items: center; justify-content: center; } 
.cform-card-name { font-size: 14px; color: var(--black); letter-spacing: -0.35px; } 
.cform-card-number { flex: 1; font-size: 12px; color: var(--info:); letter-spacing: -0.3px; } 
.cform-card-change { background: var(--regular); border-radius: 2px; padding: 3px 4px; font-size: 11px; font-weight: 500; color: var(--black); letter-spacing: -0.275px; white-space: nowrap; cursor: pointer; } 
.cform-desc-multi { font-size: 13px; line-height: 1.45; letter-spacing: -0.325px; } 
.cform-desc-multi .em { color: var(--sub); font-weight: 500; } 
.cform-desc-multi .sub { color: var(--info:); } 
.cform-note { font-size: 13px; color: var(--info:); letter-spacing: -0.325px; line-height: 1.45; } 
.cform-card-input.cform-card-add{gap: 4px; color: var(--sub)}

/* 다음 버튼 */
.cregist-main__footer { display: flex; justify-content: flex-end; } 

/* 진행 상태 카드 */
.cregist-progress { padding: 32px; } 
.camp-progress { display: flex; flex-direction: column; gap: 8px; } 
.camp-progress__tit { font-size: 18px; font-weight: 500; color: var(--black); letter-spacing: -0.45px; line-height: 1.4; } 
.camp-progress__sub { font-size: 12px; color: var(--sub); letter-spacing: -0.3px; line-height: 1.45; } 
.camp-progress__bar-row { display: flex; align-items: center; gap: 24px; } 
.camp-progress__bar { flex: 1; height: 16px; border-radius: 999px; background: #dbdbdb; overflow: hidden; } 
.camp-progress__fill { height: 100%; background: #ef3739; border-radius: 999px; } 
.camp-progress__pct { font-size: 18px; font-weight: 600; color: var(--black); letter-spacing: -0.45px; white-space: nowrap; } 
.camp-step-list { display: flex; align-items: center; gap: 4px; } 
.camp-step-item { display: flex; align-items: center; gap: 4px; font-size: 12px; color: var(--black); letter-spacing: -0.3px; white-space: nowrap; } 
.camp-step-item span { width: 16px; height: 16px; flex-shrink: 0; } 
.camp-step-sep { flex: 1; height: 1px; background: #e5e5ec; min-width: 8px; } 

/* 미리보기 카드 */
.cregist-preview { padding: 24px; display: flex; flex-direction: column; gap: 16px; flex: 1; } 
.cregist-preview__hd { display: flex; flex-direction: column; gap: 4px; } 
.cregist-preview__title-row { display: flex; align-items: center; gap: 8px; } 
.cregist-preview__tit { font-size: 18px; font-weight: 500; color: var(--black); letter-spacing: -0.45px; line-height: 1.4; } 
.cregist-preview__sub { font-size: 14px; color: var(--info:); letter-spacing: -0.35px; line-height: 1.45; } 
.cregist-preview__body { display: flex; flex-direction: column; gap: 16px; flex: 1; } 

.camp-summary-card { background: var(--bg-lightBlue); border: 1px solid #e5e7eb; border-radius: 14px; padding: 16px; display: flex; flex-direction: column; align-items: flex-start; gap: 8px; } 
.camp-summary-card__hd { display: flex; align-items: center; gap: 4px; } 
.camp-summary-bar { width: 4px; height: 14px; background: #ef3739; flex-shrink: 0; } 
.camp-summary-card__tit { font-size: 14px; font-weight: 500; color: var(--black); letter-spacing: -0.35px; } 
.camp-summary-wrap { display: flex; flex-direction: column; gap: 8px; width: 100%; } 
.camp-summary-item { display: flex; align-items: center; gap: 4px; font-size: 13px; color: var(--black); letter-spacing: -0.3px; } 
.camp-summary-item img { width: 16px; height: 16px; flex-shrink: 0; } 
.camp-summary-ph { font-size: 12px; color: var(--black); letter-spacing: -0.3px; } 
.camp-diff { margin-top: 10px; margin-bottom: 8px; display: flex; align-items: center; gap: 4px; font-size: 13px; font-weight: 500; color: var(--black); letter-spacing: -0.325px; } 
.ckeyword-tag__wrap { display: flex; flex-wrap: wrap; gap: 4px; } 
.is-easy .camp-diff__label { color: var(--system-green) } 
.is-normal .camp-diff__label { color: var(--system-yellow) } 
.is-hard .camp-diff__label { color: var(--system-red-700) } 
.is-veryHard .camp-diff__label { color: var(--system-red-700); } 
.camp-diff__desc { margin-bottom: 4px; font-size: 13px; color: var(--black); letter-spacing: -0.325px; line-height: 1.45; } 
.camp-diff__tip { font-size: 12px; color: var(--info:); letter-spacing: -0.3px; line-height: 1.45; } 
.camp-summary-item .camp-tit { min-width: 72px; } 
.camp-noTag { color: var(--black); font-size: 12px; font-weight: 400; } 
.btn-save-draft { display: flex; align-items: center; gap: 4px; height: 42px; padding: 0 16px; border: 1px solid #a2a2a2; border-radius: 9px; background: #fff; font-size: 14px; color: var(--sub); cursor: pointer; font-family: inherit; letter-spacing: -0.35px; width: 120px; justify-content: center; } 
.btn-save-draft:hover { background: var(--bg-lightBlue); } 
.camp-summary-card .caution-box__list { margin-top: 0; } 
.camp-summary-card .caution-box__list li { color: var(--black); font-size: 13px; } 


/* ═══════════════════════════════════════════════════
 STEP 02: 캠페인 정보
═══════════════════════════════════════════════════ */

/* 일정 입력 (label + input rows) */
.cform-schedule-list { display: flex; flex-direction: column; gap: 0; border: 1px solid #e5e5ec; border-radius: 10px; overflow: hidden; background: #fff; } 
.cform-schedule-item { display: flex; align-items: center; height: 48px; padding: 0 16px; } 
.cform-schedule-item + .cform-schedule-item { border-top: 1px solid var(--regular); } 
.cform-schedule-label { width: 100px; font-size: 14px; color: var(--sub); letter-spacing: -0.35px; flex-shrink: 0; } 
.cform-schedule-val { flex: 1; display: flex; align-items: center; gap: 8px; font-size: 14px; color: var(--black); letter-spacing: -0.35px; } 
.cform-schedule-val .sep { color: #a2a2a2; } 

/* 이미지 업로드 */
.img-upload-section { display: flex; flex-direction: column; gap: 16px; } 
.img-upload-row { display: flex; align-items: flex-start; gap: 0; } 
.img-upload-row__label { width: 100px; font-size: 14px; color: var(--black); letter-spacing: -0.35px; flex-shrink: 0; padding-top: 68px; } 
.img-upload-row__right { flex: 1; display: flex; gap: 16px; align-items: flex-start; } 
.img-upload-row__content { width: 336px; display: flex; flex-direction: column; gap: 4px; } 
.img-upload-row__caption {font-size: 11px;color: var(--info);letter-spacing: -0.275px;line-height: 1.45;} 
.img-upload-box { width: 336px; height: 128px; border-radius: 10px; border: 1px dashed rgba(239, 55, 57, 0.80); background: #FFEBEE; display: flex; flex-direction: column; align-items: center; justify-content: center; cursor: pointer; gap: 4px; transition: border-color 0.15s; position: relative; } 
.img-upload-box.is-dragover { border-color: var(--main); background: #fff8f7; } 
.img-upload-box__content { display: flex; flex-direction: column; align-items: center; gap: 6px; } 
.img-upload-box__btn { display: flex; align-items: center; justify-content: center; gap: 4px; overflow: hidden; color: var(--main); text-overflow: ellipsis; font-size: 14px; font-weight: 500; } 
.img-upload-box__btn .ico { filter: var(--filter-main) } 
.img-upload-box__sub { overflow: hidden; color: var(--info); font-size: 13px; font-weight: 400; line-height: 1; } 
.img-upload-box--has-img { border-color: #A2A2A2; background: var(--regular); } 
.img-upload-box__preview { width: 100px; height: 100px; object-fit: cover; border-radius: 6px; } 
.img-upload-box__close { position: absolute; top: 16px; right: 16px; padding: 0; border: 0; background: transparent; align-items: center; justify-content: center; cursor: pointer; } 
.img-upload-box__close .ico-close { filter: brightness(0) saturate(100%) invert(12%) sepia(19%) saturate(785%) hue-rotate(202deg) brightness(96%) contrast(87%); } 
.img-specs { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 4px; padding-top: 46px; flex: 1; } 
.img-specs li { display: flex; align-items: flex-start; gap: 4px; font-size: 11px; color: var(--info); letter-spacing: -0.275px; line-height: 1.45; } 
.img-specs li::before { content: '•'; flex-shrink: 0; } 
.img-specs li.is-note::before { content: ''; display: none; } 
.form-control__num { position:absolute; right:16px; top:50%; transform:translateY(-50%); font-size:13px; color:var(--info); letter-spacing:-0.325px; } 




/* 인라인 그룹 (제품구매비용/페이백 금액 등) */
.cform-inline-group { display: flex; flex-direction: column; gap: 31px; }
.cform-inline-item { display: flex; align-items: center; }
.cform-inline-label { width: 96px; font-size: 14px; color: var(--sub); letter-spacing: -0.35px; flex-shrink: 0; display: flex; align-items: center; gap: 4px; } 
.cform-inline-input { width: 248px; } 
.cform-input-unit { font-size: 14px; color: var(--black); letter-spacing: -0.35px; margin-left: 8px; flex-shrink: 0; } 

/* 경고/안내 박스 */
.cform-warn-box { background: #fff8e1; border-radius: 14px; padding: 16px; } 
.cform-warn-box__hd { display: flex; align-items: center; gap: 4px; font-size: 14px; font-weight: 500; color: var(--sub); letter-spacing: -0.35px; margin-bottom: 8px; } 
.cform-warn-box__body { font-size: 13px; color: var(--info:); letter-spacing: -0.325px; line-height: 1.6; } 

/* 예상 결제 금액 카드 */
.comm-box.border { background: #fff; border: 1px solid #e5e5ec; border-radius: 14px; padding: 40px; margin-top: 8px; } 
.comm-box__tit { display: flex; align-items: center; gap: 8px; margin-bottom: 24px; color: var(--black); font-size: 18px; font-weight: 500; letter-spacing: -0.45px; } 
.cost-total-box { margin: 0 70px; } /* 피드백 E3: 예상결제금액 박스 가운데 정렬 (피그마 FREE_260410 실측: 카드 내 좌우 여백 대칭 ~70px) */
.cost-total-row { display: flex; align-items: center; justify-content: space-between; padding: 20px 32px; border-radius: 14px; background: var(--System-Blue-50, #E3F2FD); } 
.cost-total-row__label { color: var(--info); font-size: 16px; font-weight: 400; line-height: 1.4; /* 22.4px */letter-spacing: -0.4px; } 
.cost-total-row__val { display: flex; align-items: baseline; gap: 8px; } 
.cost-total-row__amount { color: var(--system-blue); text-align: right; font-size: 20px; font-weight: 600; line-height: 1.4; /* 28px */letter-spacing: -0.5px; } 
.cost-total-row__vat { color: var(--system-blue); font-size: 12px; font-weight: 400; /* 17.4px */letter-spacing: -0.3px; } 
.cost-section { margin-top: 24px; display: flex; gap: 16px; } 
.cost-section__l { min-width: 88px; flex: none; } 
.cost-section__r { flex: 1; } 
.cost-section__head-label { white-space: nowrap; overflow: hidden; color: var(--sub); text-overflow: ellipsis; font-size: 16px; font-weight: 400; line-height: 1.4; /* 22.4px */
 letter-spacing: -0.4px; } 
.cost-section__line { flex: 1; height: 1px; background: var(--regular); margin: 11px 0; } 
.cost-rows { display: flex; flex-direction: column; padding-left: 32px; padding-top: 5px; } 
.cost-row { display: flex; justify-content: space-between; align-items: center; margin: 8px 0; } 
.cost-row__label { display: flex; align-items: center; color: var(--black); font-size: 16px; font-weight: 400; line-height: 1.4; /* 22.4px */
 letter-spacing: -0.4px; gap: 4px; } 
.cost-row__value { color: var(--black); text-align: right; font-size: 16px; font-weight: 400; line-height: 1.4; /* 22.4px */letter-spacing: -0.4px; } 
.cost-row--sub .cost-row__label { padding-left: 24px; color: var(--sub); font-size: 14px; font-weight: 400; /* 20.3px */letter-spacing: -0.35px; } 
.cost-row--sub .cost-row__value { font-size: 14px; color: var(--info:); } 
.cost-row--total .cost-row__label { font-weight: 500; } 
.cost-row--total .cost-row__value { font-weight: 500; color: var(--system-blue); } 
.cost-row-divider { height: 1px; background: #e5e5ec; } 
.cost-note { margin-top: 18px; display: flex; justify-content: flex-end; color: var(--info); text-align: right; font-size: 14px; font-weight: 400; letter-spacing: -0.35px; } 

/* 선택 select */
.cform-select { height: 48px; background: var(--regular); border: 1px solid #e5e5ec; border-radius: 10px; padding: 0 36px 0 16px; font-size: 14px; font-family: inherit; color: #333; cursor: pointer; appearance: none; -webkit-appearance: none; background-image: url('../img/ico_arrow.svg'); background-repeat: no-repeat; background-position: right 12px center; background-size: 20px; letter-spacing: -0.35px; } 

/* ═══════════════════════════════════════════════════
 STEP 03: 가이드 정보
═══════════════════════════════════════════════════ */

.cmission-option-row {display: flex;align-items: center;justify-content: space-between;background: #fff;border: 1px solid #e5e5ec;border-radius: 10px;padding: 16px;max-width: 768px;width: 100%;gap: 12px;} 
.cmission-row-wrap {display: flex;gap: 12px;align-items: center;justify-content: space-between;flex-wrap: wrap;} 
.cmission-option-row + .cmission-option-row { margin-top: 8px; } 
.form-grid-row{width: 100%;}
.cmission-row-input { flex-direction: column; align-items: stretch; } 
.cmission-option-left { display: flex; gap: 16px; align-items: center; } 
.cmission-option-icon { width: 20px; height: 20px; flex-shrink: 0; display: flex; align-items: center; justify-content: center; } 
.cmission-option-txt__main { font-size: 14px; font-weight: 500; color: var(--black); letter-spacing: -0.35px; line-height: 1.45; } 
.cmission-option-txt__sub {font-size: 14px;color: var(--info);letter-spacing: -0.35px;line-height: 1.45;} 
.cmission-small-btns { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }
.cmission-small-btn { height: 36px; min-width: 72px; padding: 0 12px; background: #fff; border: 1px solid #e5e5ec; border-radius: 8px; font-size: 13px; font-family: inherit; color: var(--sub); cursor: pointer; letter-spacing: -0.325px; transition: all 0.15s; white-space: nowrap; display: inline-flex; align-items: center; justify-content: center; }
.cmission-small-btn.is-active { background: rgba(239,55,57,0.8); color: #fff; border-color: transparent; }
.cmission-small-btn:hover:not(.is-active) { background: var(--bg-lightBlue); }
/* radio/checkbox 기반 선택 — input은 시각적으로 숨기고 label(.cmission-small-btn)로 표시 */
.cmission-small-input { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.cmission-small-input:checked + .cmission-small-btn { background: var(--main-80); color: #fff; border-color: transparent; }
.cmission-small-input.selected:checked + .cmission-small-btn { border-radius: 8px; border: 1px solid var(--regular); background: #B9B9B9; color: var(--sub); border-color: transparent; }
.cmission-small-input:focus-visible + .cmission-small-btn { outline: 2px solid #ef3739; outline-offset: 2px; }
.cmission-small-input:not(:checked) + .cmission-small-btn:hover { background: var(--bg-lightBlue); }
.cmission-small-input:disabled + .cmission-small-btn { background: var(--regular);color: var(--disabled); }
.cmission-small-input:disabled + .cmission-small-btn:hover {background: var(--bg-lightBlue);}
.cmission-input-extra{ display: flex; justify-content: flex-end;  }
.cmission-input-extra.full { width: 100%; padding-left: 36px; } 
.cmission-input-extra.full .wrap-input { width: 100%; } 
.cmission-input-extra.full .wrap-input .form-control { width: 100%; } 


/* 키워드 태그 인풋 */
.wrap-input--keyword {background: #fff;border: 1px solid var(--line-gray);border-radius: 10px;padding: 8px 16px;min-height: 48px;max-width: 512px;width: 100%;cursor: text;} 
.ckeyword-preview { display: flex; flex-wrap: wrap; align-items: center; gap: 4px; } 
.ckeyword-tag {background: #fff;border: 1px solid var(--line-gray);color: var(--black);border-radius: 4px;padding: 2px 8px;font-size: 13px;height: 24px;box-shadow: 1px 1px 4px -1px rgba(35,48,59,0.05);white-space: nowrap;display: inline-flex;align-items: center;justify-content: center;} 
.fix-tag { color: var(--sub); font-size: 14px; font-weight: 400; letter-spacing: -0.35px; } 
.ckeyword-sep { font-size: 14px; color: var(--sub); margin: 0 1px; } 
.wrap-input.transparent { background: transparent; border-color: transparent; } 

.cmission-option-row + .caution-box { margin-top: 8px; } 
.caution-box { border-radius: 14px; background: var(--bg-lightBlue); padding: 8px 16px; } 
.caution-box__hd { display: flex; align-items: center; gap: 4px; font-size: 12px; font-weight: 400; color: var(--sub); letter-spacing: -0.35px; } 
.caution-box.type2 { padding: 16px; } 
.caution-box.type2 .caution-box__hd { color: var(--sub); font-size: 14px; font-weight: 500; letter-spacing: -0.35px; } 
.caution-box__list li { color: var(--info); font-size: 14px; font-weight: 400; letter-spacing: -0.35px; position: relative; padding-left: 6px; margin-top: 4px; }
.caution-box__list li::before { content: ''; position: absolute; left: 0; top: 9px; background: var(--info); width: 2px; height: 2px; border-radius: 50%;}
.caution-box.type-gray { background: var(--regular); }
.caution-box__hd:has(.caution-box__text) { align-items: flex-start; }
.caution-box__text strong { display: block; color: var(--black); font-weight: 500; font-size: 14px; letter-spacing: -0.35px; margin-bottom: 2px; }
.caution-box__text p { margin: 0; font-size: 14px; font-weight: 400; color: var(--sub); letter-spacing: -0.35px; line-height: 1.45; }

/* ===== 참여 취소 검토 요청 상세 모달 ===== */
.cancel-request-body { text-align: left; display: flex; flex-direction: column; gap: 20px; }
.cancel-request-desc { margin: 0; font-size: 16px; font-weight: 400; color: var(--sub); letter-spacing: -0.4px; line-height: 1.4; }
.cancel-request-info { display: flex; flex-direction: column; border: 1px solid var(--line-gray); border-radius: 14px; padding: 0 16px; background: var(--white); }
.cancel-request-info__row { display: flex; align-items: center; gap: 40px; padding: 8px 0; }
.cancel-request-info__label { display: inline-flex; align-items: center; gap: 4px; width: 80px; flex-shrink: 0; color: var(--sub); font-size: 16px; letter-spacing: -0.4px; }
.cancel-request-info__label .ico { width: 16px; height: 16px; }
.cancel-request-info__value { color: var(--black); font-size: 16px; font-weight: 400; letter-spacing: -0.4px; }
.cancel-request-field .form-label { margin-bottom: 12px; font-size: 16px; }
.cancel-request-field .select-wrap { width: 100%; }
.cancel-request-field .select-wrap .ss-main,
.cancel-request-field .select-wrap .ss-content { width: 100%; }
.cancel-request-field .wrap-input .form-control--textarea { width: 100%; height: 96px; }
.cancel-request-field .check-area { gap: 8px 32px; }

/* ===== 리뷰기간 연장 상세 모달 ===== */
.review-extend-date-row { display: flex; gap: 8px; width: 100%; }
.review-extend-date-row .cancel-request-field { flex: 1 1 0; min-width: 0; }
.review-extend-date-row .cancel-request-field .date-range-wrap.combined { width: 100%; }
.review-extend-date { display: flex; align-items: center; gap: 8px; height: 48px; padding: 0 16px; border: 1px solid var(--line-gray); border-radius: 10px; background: var(--white); }
.review-extend-date span { font-size: 14px; color: var(--black); letter-spacing: -0.35px; }
.review-extend-date--readonly { background: var(--regular); }
.review-extend-date--readonly .ico { opacity: .5; }
.review-extend-date--readonly span { color: var(--disabled); }

@media (max-width: 768px) {
    /* ── 참여 취소 검토 요청 / 리뷰기간 연장 모달 — 바텀시트 (Figma 1383:46103) ── */
    #cancelReviewRequestModal,
    #reviewExtendModal { align-items: flex-end; }
    #cancelReviewRequestModal .modal-wrap--wide,
    #reviewExtendModal .modal-wrap--wide { width: 100%; max-width: 100%; height: 90vh; max-height: 90vh; border-radius: 20px 20px 0 0; padding: 0; display: flex; flex-direction: column; overflow: hidden; }

    #cancelReviewRequestModal .modal-header,
    #reviewExtendModal .modal-header { height: 56px; padding: 0; flex: 0 0 auto; display: flex; align-items: center; justify-content: center; border-bottom: 1px solid var(--line-gray); }
    #cancelReviewRequestModal .modal-title-text,
    #reviewExtendModal .modal-title-text { font-size: 20px; letter-spacing: -0.5px; }
    #cancelReviewRequestModal .modal-close,
    #reviewExtendModal .modal-close { position: absolute; right: 20px; top: 16px; width: 24px; height: 24px; }
    #cancelReviewRequestModal .modal-close .ico,
    #reviewExtendModal .modal-close .ico { width: 24px; height: 24px; }

    #cancelReviewRequestModal .modal-content,
    #reviewExtendModal .modal-content { flex: 1 1 auto; min-height: 0; display: flex; flex-direction: column; gap: 0; }
    #cancelReviewRequestModal .modal-body,
    #reviewExtendModal .modal-body { flex: 1 1 auto; min-height: 0; overflow-y: auto; padding: 12px 20px 24px; }
    #cancelReviewRequestModal .cancel-request-body,
    #reviewExtendModal .cancel-request-body { gap: 24px; }
    #cancelReviewRequestModal .cancel-request-desc,
    #reviewExtendModal .cancel-request-desc { font-size: 13px; }

    #cancelReviewRequestModal .caution-box.type2,
    #reviewExtendModal .caution-box.type2 { padding: 8px; }
    #cancelReviewRequestModal .caution-box__text strong,
    #cancelReviewRequestModal .caution-box__text p,
    #cancelReviewRequestModal .caution-box.type2 .caution-box__hd,
    #reviewExtendModal .caution-box__text strong,
    #reviewExtendModal .caution-box__text p,
    #reviewExtendModal .caution-box.type2 .caution-box__hd { font-size: 13px; }
    #reviewExtendModal .caution-box .caution-box__hd { font-size: 13px; }

    #cancelReviewRequestModal .cancel-request-info,
    #reviewExtendModal .cancel-request-info { padding: 0 8px; }
    #cancelReviewRequestModal .cancel-request-info__row,
    #reviewExtendModal .cancel-request-info__row { gap: 8px; padding: 8px; }
    #cancelReviewRequestModal .cancel-request-info__label,
    #reviewExtendModal .cancel-request-info__label { width: 68px; font-size: 13px; }
    #cancelReviewRequestModal .cancel-request-info__value,
    #reviewExtendModal .cancel-request-info__value { font-size: 13px; }

    #cancelReviewRequestModal .cancel-request-field .form-label,
    #reviewExtendModal .cancel-request-field .form-label { font-size: 14px; margin-bottom: 12px; }
    #cancelReviewRequestModal .select-wrap,
    #cancelReviewRequestModal .select-wrap .ss-main,
    #reviewExtendModal .select-wrap,
    #reviewExtendModal .select-wrap .ss-main { height: 36px; --ss-main-height: 36px; }
    #cancelReviewRequestModal .select-wrap .ss-main .ss-values .ss-single,
    #cancelReviewRequestModal .select-wrap .ss-main .ss-values .ss-placeholder,
    #reviewExtendModal .select-wrap .ss-main .ss-values .ss-single,
    #reviewExtendModal .select-wrap .ss-main .ss-values .ss-placeholder { line-height: 36px; font-size: 13px; }
    #cancelReviewRequestModal .check-area .label-check input[type=radio] ~ label,
    #reviewExtendModal .check-area .label-check input[type=radio] ~ label { font-size: 13px; }
    #cancelReviewRequestModal .cancel-request-field .wrap-input .form-control--textarea,
    #reviewExtendModal .cancel-request-field .wrap-input .form-control--textarea { height: 96px; }

    #cancelReviewRequestModal .modal-footer,
    #reviewExtendModal .modal-footer { flex: 0 0 auto; margin: 0; padding: 12px 20px; gap: 16px; background: rgba(255, 255, 255, 0.9); backdrop-filter: blur(3px); border-top: 1px solid var(--line-gray); }
    #cancelReviewRequestModal .modal-btn-cancel,
    #cancelReviewRequestModal .modal-btn-confirm,
    #reviewExtendModal .modal-btn-cancel,
    #reviewExtendModal .modal-btn-confirm { flex: 1 1 0; width: auto; min-width: 0; height: 48px; font-size: 15px; }

    /* 리뷰기간 연장 모달 전용 — 날짜 2열을 세로 스택으로 */
    .review-extend-date-row { flex-direction: column; gap: 16px; }
    .review-extend-date,
    .review-extend-date-row .cancel-request-field .date-range-wrap.combined { height: 44px; }
}


/* 체험단 미션 선택 버튼 */
.cmission-choices { display: flex; flex-direction: column; gap: 8px; } 
.cmission-choice-btn { display: flex; align-items: center; gap: 16px; height: 48px; padding: 0 16px; border: 1px solid #e5e5ec; border-radius: 10px; background: #fff; width: 336px; font-size: 14px; font-family: inherit; color: var(--sub); cursor: pointer; letter-spacing: -0.35px; text-align: left; transition: all 0.15s; } 
.cmission-choice-btn.is-active { background: rgba(239,55,57,0.8); color: #fff; border-color: transparent; } 
.cmission-choice-btn:hover:not(.is-active) { background: var(--bg-lightBlue); } 
.cmission-choice-icon { width: 20px; height: 20px; flex-shrink: 0; } 

/* ═══════════════════════════════════════════════════
 팝업 공통
═══════════════════════════════════════════════════ */

.cpopup-overlay { position: fixed; inset: 0; background: rgba(17,17,17,0.5); z-index: 5000; display: flex; align-items: center; justify-content: center; opacity: 0; pointer-events: none; transition: opacity 0.2s; } 
.cpopup-overlay.is-open { opacity: 1; pointer-events: auto; } 
.cpopup-wrap { background: #fff; border-radius: 14px; width: 1000px; max-height: 90vh; overflow: hidden; display: flex; flex-direction: column; transform: translateY(12px); transition: transform 0.2s; } 
.cpopup-overlay.is-open .cpopup-wrap { transform: translateY(0); } 
.cpopup-header { height: 82px; display: flex; align-items: center; justify-content: center; position: relative; border-bottom: 1px solid #e5e5ec; flex-shrink: 0; } 
.cpopup-title { font-size: 24px; font-weight: 500; color: var(--black); letter-spacing: -0.6px; } 
.cpopup-close { position: absolute; right: 20px; top: 50%; transform: translateY(-50%); width: 32px; height: 32px; background: none; border: none; cursor: pointer; display: flex; align-items: center; justify-content: center; } 
.cpopup-body { padding: 24px 32px; flex: 1; overflow-y: auto; } 
.cpopup-filter-row { display: flex; align-items: center; justify-content: space-between; margin-bottom: 16px; } 
.cpopup-filter-tit { font-size: 18px; font-weight: 500; color: var(--black); letter-spacing: -0.45px; } 
.cpopup-table-wrap { overflow-x: auto; } 
.cpopup-table { width: 100%; border-collapse: collapse; min-width: 900px; } 
.cpopup-table th { background: var(--bg-lightBlue); padding: 12px; font-size: 14px; font-weight: 500; color: var(--sub); border-bottom: 1px solid #e5e5ec; text-align: center; letter-spacing: -0.35px; white-space: nowrap; } 
.cpopup-table td { padding: 12px; font-size: 14px; color: var(--black); border-bottom: 1px solid var(--regular); letter-spacing: -0.35px; text-align: center; white-space: nowrap; } 
.cpopup-table tbody tr:hover td { background: var(--bg-lightBlue); cursor: pointer; } 
.cpopup-table tbody tr.is-selected td { background: rgba(239,55,57,0.05); } 
.cpopup-table .td-left { text-align: left; } 
.cpopup-footer { padding: 20px 32px; display: flex; align-items: center; justify-content: center; gap: 12px; border-top: 1px solid #e5e5ec; flex-shrink: 0; } 
.cpopup-btn-cancel { height: 36px; min-width: 102px; padding: 0 12px; background: #fff; color: var(--sub); border: 1px solid #e5e5ec; border-radius: 8px; font-size: 14px; font-family: inherit; font-weight: 500; cursor: pointer; letter-spacing: -0.35px; } 
.cpopup-btn-confirm { height: 36px; min-width: 102px; padding: 0 12px; background: rgba(239,55,57,0.8); color: #fff; border: none; border-radius: 8px; font-size: 14px; font-family: inherit; font-weight: 500; cursor: pointer; letter-spacing: -0.35px; } 
.cpopup-btn-cancel:hover { background: var(--bg-lightBlue); } 
.cpopup-btn-confirm:hover { background: #ef3739; } 

/* 캠페인 불러오기 날짜 변경 팝업 */
.cpopup-date-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; padding: 8px 0; } 
.cpopup-date-item { display: flex; flex-direction: column; gap: 8px; } 
.cpopup-date-label { font-size: 14px; font-weight: 500; color: var(--black); letter-spacing: -0.35px; } 
.cpopup-date-input { height: 48px; background: var(--regular); border: 1px solid #e5e5ec; border-radius: 10px; padding: 0 16px; font-size: 14px; font-family: inherit; color: var(--black); letter-spacing: -0.35px; width: 100%; } 
.btn-save-draft img { width: 18px; height: 18px; flex-shrink: 0; } 

/* 추천 가이드 */
.crecommend-guide-box {background: #fff3e0;border-radius: 14px;padding: 24px 48px;margin-top: 0;margin-bottom: 24px;width: calc(100% - 96px);max-width: 1084px;display: flex;align-items: center;justify-content: space-between;flex-wrap: wrap;} 
.crecommend-guide-header { display: flex; align-items: center; margin-bottom: 10px; gap: 4px; } 
.crecommend-guide-title { display: flex; align-items: center; font-size: 18px; font-weight: 500; letter-spacing: -0.45px; gap: 4px; } 
.crecommend-chip { background:: var(--system-orange-900); border: 1px solid var(--system-orange-900); color: var(--system-orange-900); border-radius: 100px; padding: 3px 8px; font-size: 11px; font-weight: 500; letter-spacing: -0.275px; white-space: nowrap; } 
.crecommend-guide-content { display: flex; align-items: center; gap: 16px; } 
.crecommend-guide-text { flex: 1; color: var(--sub); font-size: 16px; font-weight: 500; line-height: 140%; letter-spacing: -0.4px; } 
.crecommend-guide-btn { height: 48px; padding: 0 24px; border-radius: 10px; font-size: 13px; font-weight: 500; font-family: inherit; cursor: pointer; letter-spacing: -0.325px; white-space: nowrap; transition: all 0.15s ease; } 

/* 캠페인 일정 입력 필드 */
.cform-schedule-list { display: flex; flex-direction: column; gap: 8px; } 
.cform-schedule-item { display: flex; align-items: center; gap: 16px; } 
.cform-schedule-label { width: 100px; color: var(--sub); font-size: 14px; font-weight: 400; line-height: 1.45; letter-spacing: -0.35px; flex-shrink: 0; } 
.cform-schedule-val { display: flex; align-items: center; gap: 24px; flex: 1; background: #ffffff; border: 1px solid #e5e5ec; border-radius: 10px; padding: 8px 16px; height: 48px; } 
.cform-schedule-val span { color: var(--info:); font-size: 14px; font-weight: 400; line-height: 1.45; letter-spacing: -0.35px; text-align: center; width: 80px; } 
.cform-schedule-val span.sep { width: auto; } 
.cform-schedule-val svg { width: 20px; height: 20px; margin-left: auto; flex-shrink: 0; cursor: pointer; } 

/* ─── Campaign Select Page ─── */
.tab-content_box { position: relative; } 
.select-tab-actions { display: flex; justify-content: flex-end; gap: 8px; margin-bottom: 0; } 
.select-tab-actions .btn-comm {padding: 12px 16px; font-size: 14px; height: 42px;}
.row-item .card-item.select-notice-card {width: 888px;max-width: calc(100% - 360px);background: var(--white);padding: 19px 24px;} 
.select-notice-title {position: relative;color: var(--black);line-height: 1.45;margin-bottom: 6px;Body/B1_KR_Rg_16 */font-family: Pretendard;font-size: 16px;font-style: normal;font-weight: 400;line-height: 140%; /* 22.4px */letter-spacing: -0.4px;display: flex;align-items: center;} 
.select-notice-card ~ .select-tab-actions {position: absolute; top: 0; right: 0; }
.select-notice-list {display: flex;flex-direction: column;gap: 4px;} 
.select-notice-item {position: relative;padding-left: 14px;color: var(--sub);font-size: 14px;font-weight: 500; letter-spacing: -0.35px;} 
.select-notice-item.highlight {color: var(--main);} 
.select-notice-item::before {content: ''; width: 6px; height: 6px; position: absolute; top: 8px; left: 0; border-radius: 50%; background: var(--sub);}
.select-notice-item::before { top: 6px; } 
.row-item .card-item.select-summary-card { display: flex; align-items: center; padding: 27px 24px; margin-bottom: 0; flex-wrap: wrap; } 
.select-summary-group { display: flex; align-items: center; gap: 32px; min-width: 0; } 
.select-summary-item { display: flex; align-items: center; gap: 16px; color: var(--black); font; white-space: nowrap; padding-right: 16px; margin-right: 16px; position: relative; } 
.select-summary-label { position: relative; color: var(--black); display: flex; align-items: center; gap: 8px; font-size: 16px; } 
.select-summary-label::before { /* content: ""; */position: absolute; left: 0; top: 50%; transform: translateY(-50%); width: 14px; height: 14px; border: 1px solid var(--black); border-radius: 50%; } 
.select-summary-item strong { font-size: 18px; font-weight: 600; } 
.select-summary-item .point { color: var(--main); } 
.select-summary-item:not(:last-child)::after { content: ''; position: absolute; top: 50%; right: 0; transform: translateY(-50%); width: 1px; height: 20px; background: var(--line-gray:); } 
.select-table thead th { border-bottom: 2px solid var(--main); } 

.select-table thead th:first-child { border-top-left-radius: 4px; } 
.select-table thead th:last-child { border-top-right-radius: 4px; } 
.select-table .th-wrap { display: flex; align-items: center; justify-content: center; gap: 4px; } 
.select-search-box { display: flex; align-items: center; width: 320px; height: 32px; padding: 0 10px 0 18px; background: var(--regular); border-radius: 999px; flex-shrink: 0; } 
.select-search-box input { flex: 1; min-width: 0; border: 0; background: transparent; color: var(--sub); font-size: 12px; outline: none; } 
.select-search-box input::placeholder { color: var(--disabled); } 
.select-search-box button { width: 24px; height: 24px; display: flex; align-items: center; justify-content: center; border: 0; flex-shrink: 0; } 
.card-item.select-table-card { overflow: visible; padding: 16px 24px; } 
.select-table-title { display: block; margin-bottom: 16px; color: var(--black); font-size: 18px; font-weight: 500; line-height: 1.45; display: flex; align-items: center; } 
.row-item:has(.select-summary-card) { flex-direction: row; justify-content: space-between; align-items: flex-end; gap: 16px; } 

.table-wrapper { border: 1px solid #c7c7c7; overflow-y: hidden; overflow-x: auto; border-radius: 4px; } 
.select-table { min-width: 1156px; width: 100%; border-collapse: collapse; table-layout: fixed; } 
.select-table thead { } 
.select-table thead th { position: relative; height: 44px; padding: 0 12px; text-align: center; font-weight: 500; color: var(--black); white-space: nowrap; border-right: 1px solid #C7C7C7; /* border-top: 1px solid #C7C7C7; */
 font-size: 14px; background: var(--regular); /* display: flex; */
 /* align-items: center; */
 /* justify-content: center; */
 /* gap: 4px; */}
.select-table thead th span { flex-shrink: 0; } 
.select-table thead th .ico { flex-shrink: 0; width: 12px; height: 12px; } 
.select-table thead th.has-sort,
.select-table thead th.has-sort-desc { gap: 4px; } 
.select-table thead th.has-dropdown { gap: 4px; } 
.select-table thead th.has-filter::after { content: ""; display: inline-block; width: 10px; height: 10px; margin-left: 3px; vertical-align: -1px; background: url('../img/ico_down.svg') no-repeat center / 6px 4px; opacity: 0.55; } 
.select-table thead th:last-child { border-right: none; } 
.select-table tbody td {height: 44px;padding: 0 16px;text-align: center;border-right: 1px solid #C7C7C7;border-bottom: 1px solid #C7C7C7;color: var(--black);font-size: 14px;line-height: 1.3;white-space: nowrap;text-overflow: ellipsis;overflow: hidden;}
.select-table tbody td:last-child { border-right: none; }
.select-table tbody td.td-insight { overflow: visible; }
.select-table tbody tr[onclick] { cursor: pointer; }
.select-table tbody tr:last-child td { border-bottom: none; } 
.select-table tbody tr{background: #fff;}
.select-table tbody tr:hover,
.select-table tbody tr.is-selected {background: #EDF4FF;} 
.has-filter { z-index: 2; } 
.filter-popover {position: absolute;left: 50%;top: 30px;transform: translateX(-50%);padding: 8px 0;z-index: 20;border-radius: 4px;background: #FFF;box-shadow: 0 8px 20px 0 rgba(0, 20, 55, 0.16);}
.filter-popover .check-area .label-check{width: 100%;}
.filter-popover .check-area .label-check input[type=checkbox] ~ label {display: flex;align-items: center;gap: 8px;font-size: 11px;color: var(--black);font-weight: 400;padding: 8px 16px;width: 100%;color: var(--sub);text-align: center; font-size: 12px;font-style: normal;font-weight: 400;line-height: 145%;letter-spacing: -0.3px;}
.filter-popover .check-area {gap: 0;}
.filter-popover .check-area .label-check input[type=checkbox]:checked ~ label::before{background-image: url("../img/ico_chk_black.svg");}

.courier-popover {display: flex;flex-direction: column;align-items: stretch;min-width: 160px;overflow: hidden;}
.courier-popover:has(.filter-popover-item) {min-width: 112px; left: auto; transform: none; right: 35px;}
.filter-popover-title {padding: 8px 16px;color: var(--sub);text-align: center;font-family: 'Pretendard', sans-serif;font-size: 12px;font-weight: 400;line-height: 1.45;letter-spacing: -0.3px;white-space: nowrap;margin: 0;}
.filter-popover-item {display: block;width: 100%;padding: 8px 16px;background: transparent;border: 0;color: var(--sub);font-size: 12px;font-weight: 400;line-height: 1.45;letter-spacing: -0.3px;white-space: nowrap;text-align: left;cursor: pointer;}
.filter-popover-item:hover {background: #f8f8fa;}
.filter-popover-item.is-selected {width: calc(100% - 16px);padding: 8px;background: var(--regular);border-radius: 4px;margin: 0 8px;}
.filter-popover-item.is-selected:hover {background: var(--regular);}


.pick-btn {display: inline-flex;align-items: center;justify-content: center;width: 72px;height: 24px;padding: 4px 15px 3px 16px;justify;background: var(--disabled);color: var(--white);font-size: 12px;font-weight: 400;letter-spacing: -0.3px;border-radius: 4px;} 
.pick-btn.active { background: #159947; } 
.channel-search { width: 24px; height: 24px; display: inline-flex; align-items: center; justify-content: center; border: 0; } 
.channel-search .ico { width: 16px; height: 16px; filter: var(--filter-black); } 
.channel-mark { display: inline-block; width: 18px; height: 18px; border-radius: 2px 7px 2px 2px; border: 1px solid rgba(42, 42, 55, 0.24); background: #7B68A8; box-shadow: inset -4px -4px 0 rgba(255, 255, 255, 0.35); } 
.channel-mark.red { background: var(--main); } 
.channel-mark.yellow { background: #E9CF20; } 
.pagination-wrap {display: flex;align-items: center;justify-content: flex-end;padding: 0;border-top: 0;}
.pagination-btn { width: 32px; height: 32px; border: 1px solid #e5e5ec; background: #ffffff; cursor: pointer; font-size: 13px; color: var(--sub); display: flex; align-items: center; justify-content: center; font-weight: 400; line-height: 1.45; letter-spacing: -0.325px; }
.pagination-btn:not(:last-child) { border-right: none; }
.pagination-btn.active {background: #EAEAEA;color: var(--sub);border-color: var(--line-gray);}
.pagination-btn[aria-label="이전"] {border-top-left-radius: 99px;border-bottom-left-radius: 99px;padding: 6px 10px;width: 42px;}
.pagination-btn[aria-label="다음"] {border-top-right-radius: 99px;border-bottom-right-radius: 99px;width: 42px;} 
.select-table-bottom { display: flex; align-items: center; justify-content: flex-end; gap: 8px; padding: 24px 0 0; } 
.page-size { display: inline-flex; align-items: center; justify-content: center; gap: 4px; height: 24px; min-width: 44px; border: 1px solid var(--line-gray); border-radius: 999px; color: var(--info); font-size: 10px; background: var(--white); } 

/* ===== Campaign Detail ===== */
.campaign-detail { padding: 40px 32px; } 
.campaign-detail-header { margin-bottom: 40px; } 
.campaign-info-grid { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 20px; margin-bottom: 40px; } 
.campaign-info-card { background: white; border-radius: 14px; padding: 20px; box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05); } 
.campaign-info-card.product { grid-column: 1; } 
.campaign-info-card.status { grid-column: 2; } 
.campaign-info-card.progress { grid-column: 3; } 
.product-image { width: 104px; height: 104px; border-radius: 10px; margin-right: 16px; object-fit: cover; } 
.product-info { display: flex; } 
.product-title { font-weight: 500; color: var(--black); margin-bottom: 8px; } 
.product-subtitle { font-size: 14px; color: var(--sub); } 
.status-item { display: flex; justify-content: space-between; padding: 12px 0; border-bottom: 1px solid var(--regular); } 
.status-item:last-child { border-bottom: none; } 
.status-label { color: var(--sub); font-size: 14px; } 
.status-value { color: var(--black); font-weight: 500; } 
.progress-timeline { background: white; border-radius: 14px; padding: 24px; box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05); margin-bottom: 40px; } 
.timeline { display: flex; align-items: center; gap: 20px; position: relative; padding: 20px 0; } 
.timeline-step { flex: 1; text-align: center; } 
.timeline-step-icon { width: 28px; height: 28px; border-radius: 50%; display: flex; align-items: center; justify-content: center; margin: 0 auto 12px; color: white; font-weight: 600; } 
.timeline-step.active .timeline-step-icon { background: #ef3739; box-shadow: 0 4px 2px rgba(0, 0, 0, 0.15); } 
.timeline-step.inactive .timeline-step-icon { background: #dbdbdb; } 
.timeline-step-title { font-weight: 500; color: var(--black); font-size: 14px; margin-bottom: 4px; } 
.timeline-step-date { font-size: 12px; color: var(--sub); } 
.timeline-progress { position: absolute; bottom: 50%; left: 0; height: 8px; background: #ef3739; border-radius: 4px; width: 50%; transform: translateY(50%); z-index: 0; } 
.timeline-background { position: absolute; bottom: 50%; left: 0; height: 8px; background: #dbdbdb; border-radius: 4px; width: 100%; transform: translateY(50%); z-index: 0; } 
.campaign-buttons { display: flex; gap: 12px; margin-bottom: 40px; flex-wrap: wrap; } 
.campaign-btn { padding: 12px 24px; border-radius: 30px; border: none; cursor: pointer; font-weight: 500; font-size: 14px; display: flex; align-items: center; gap: 5px; transition: all 0.3s; border-left: 5px solid; } 
.campaign-btn.disabled { background: #dbdbdb; color: var(--sub); border-left-color: #818181; cursor: not-allowed; } 
.campaign-btn.active { background: white; color: var(--black); border-left-color: #ef3739; } 
.campaign-list-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 24px; } 
.campaign-list-title { font-size: 24px; font-weight: 500; color: var(--black); } 
.campaign-list-btn { background: white; border: 1px solid #a2a2a2; border-radius: 8px; padding: 10px 24px; cursor: pointer; font-size: 13px; font-weight: 500; color: var(--sub); display: flex; align-items: center; gap: 4px; } 
.participant-table { width: 100%; border-collapse: collapse; background: white; border-radius: 14px; overflow: hidden; box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05); } 
.participant-table thead { background: white; border-bottom: 1.5px solid #ef3739; } 
.participant-table th { padding: 20px; text-align: left; font-weight: 500; color: var(--sub); font-size: 15px; letter-spacing: -0.375px; } 
.participant-table td { padding: 20px; border-bottom: 1px solid var(--regular); font-size: 14px; color: var(--black); } 
.participant-table tbody tr:last-child td { border-bottom: none; } 
.review-btn { background: white; border: 1px solid #e5e5ec; border-radius: 999px; padding: 6px 24px; cursor: pointer; font-size: 14px; color: var(--black); white-space: nowrap; } 
.review-btn:hover { background: #f5f5f5; }

/* ─── Payment History Page ─── */
/* ── 결제내역 페이지 (Figma 디자인 기준) ── */
.payment-page-title { font-size: 24px; font-weight: 500; color: var(--black); margin-bottom: 24px; letter-spacing: -0.6px; }

/* 상단: 이용정보 + 비즈머니 카드 행 */
/* 3차 피드백 s26①: 1920 미만 뷰포트에서 비즈머니 카드가 아랫줄로 wrap되던 문제 —
   피그마(결제 내역_260710) 실측 이용정보 848 / 비즈머니 608 비율 유지하며 한 줄 고정 (1024 이하는 세로 스택) */
.payment-info-row {display: flex;gap: 24px;align-items: flex-start;flex-wrap: nowrap;}

/* 이용정보 카드 (peach 배경 + 업그레이드 버튼 우측) */
.payment-usage-card { flex: 848 1 0; background: var(--system-orange); border-radius: 14px; padding: 16px 32px; display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; } 
.payment-usage-card__body { flex: 1; min-width: 0; } 
.payment-usage-card h3 { font-size: 18px; font-weight: 500; color: var(--black); margin-bottom: 8px; letter-spacing: -0.45px; } 
.payment-usage-item { margin-bottom: 8px; display: flex; align-items: center; gap: 8px; } 
.payment-usage-item p { font-size: 16px; color: var(--black); letter-spacing: -0.4px; display: inline-flex; align-items: center; gap: 8px; } 
.payment-usage-item .tag { display: inline-block; } 
.payment-usage-item .welcome-desc { margin: 0; } 
.payment-next-date { font-size: 16px; color: var(--black); margin-top: 4px; letter-spacing: -0.4px; } 
.payment-upgrade-btn { background: #fff; border: 1px solid #e5e5ec; border-radius: 8px; padding: 0 12px; height: 36px; cursor: pointer; display: inline-flex; align-items: center; gap: 4px; font-size: 14px; color: var(--sub); font-weight: 400; flex-shrink: 0; } 
.payment-upgrade-btn:hover { background: #f7f7fb; } 

/* 비즈머니 카드 (white + shadow) */
.payment-bizmoney-card {flex: 608 1 0;border-radius: 14px;background: #F7F7FB;padding: 16px 24px;} /* 3차 s26①: 피그마 실측 608 (기존 603 고정폭) */
.payment-bizmoney-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 16px; } 
.payment-bizmoney-header h3 { font-size: 18px; font-weight: 500; color: var(--black); letter-spacing: -0.45px; } 
.payment-bizmoney-btn { background: #fff; border: 1px solid #e5e5ec; border-radius: 8px; padding: 8px 12px; height: 36px; cursor: pointer; font-size: 14px; color: var(--sub); line-height: 145%; /* 20.3px */
 letter-spacing: -0.35px; display: flex; align-items: center; justify-content: center; } 
.payment-bizmoney-btn:hover { background: var(--regular); }
.payment-balance-item { display: flex; justify-content: space-between; align-items: center; padding: 8px 0; font-size: 14px; color: var(--black); }
.payment-balance-label { font-weight: 400; color: var(--sub); }
.payment-balance-value { font-weight: 500; color: var(--black); }
/* 4차 결제 내역_261019: 보유 금액 ∨ 토글 — 기본 접힘, 클릭 시 총 충전/사용금액 펼침 */
.payment-balance-toggle { display: inline-flex; align-items: center; gap: 8px; background: none; border: none; padding: 0; cursor: pointer; font-size: 14px; }
.payment-balance-toggle .ico-down { transition: transform .2s ease; }
.payment-balance-toggle[aria-expanded="true"] .ico-down { transform: rotate(180deg); }
.payment-divider {height: 1px;background: #ebebeb;margin: 8px 0;}
.payment-detail-item {display: flex;justify-content: space-between;padding: 8px 0;font-size: 14px;color: var(--black);}
.payment-detail-label { font-weight: 400; color: var(--sub); }
.payment-detail-value { font-weight: 500; color: var(--black); }

/* 3차 피드백 s26②: [이용가이드] 버튼 HOVER — 피그마 결제 내역_260710 우측 hover 시안 실측
   (보더 #EF3739, 텍스트 #505050→#111, 배경 흰색 유지) + 코멘트(yeeun 7/10) "약간 올라오는 느낌의 액션" */
.page-title_wrap .guide-btn.btn-comm.secondary:hover:not(:disabled) {
    background: var(--white);
    border-color: var(--main);
    color: var(--black);
    transform: translateY(-2px);
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.08);
}
.payment-detail-value .highlight {color: var(--main);}

/* 카테고리 탭 + 필터 같은 줄 */
.payment-tabs-row {display: flex;align-items: center;justify-content: space-between;border-bottom: 1px solid #E5E5EC;overflow: hidden;} 
.payment-category-tabs {display: flex;gap: 24px;overflow-x: auto;overflow-y: hidden;} 
.payment-category-tab { font-size: 16px; font-weight: 400; color: var(--sub); cursor: pointer; border-bottom: 2px solid transparent; margin-bottom: -1px; transition: color 0.2s, border-color 0.2s; min-width: 100px; text-align: center; padding-bottom: 16px; } 
.payment-category-tab:hover { color: var(--black); } 
.payment-category-tab.active { color: #ef3739; border-bottom-color: #ef3739; font-weight: 500; }
/* payment-category-tabs 페이지네이션 (3개씩 노출, 다음 버튼) */
.payment-category-tabs.is-paged { overflow-x: auto; -webkit-overflow-scrolling: touch; scrollbar-width: none; scroll-behavior: smooth; position: relative; }
.payment-category-tabs.is-paged::-webkit-scrollbar { display: none; }
.payment-tabs-next { position: absolute; top: 0; display: flex; align-items: center; justify-content: center; width: 28px; padding: 0; background: #fff; border: none; cursor: pointer; z-index: 2; }
.payment-tabs-next .ico { width: 20px; height: 20px; transition: transform 0.2s ease; }
.payment-tabs-next.is-prev .ico { transform: rotate(180deg); }

/* 필터 (탭 우측) */
.payment-tabs-search { display: flex; justify-content: right; margin: 32px 0; } 

/* 테이블 */
.payment-history-table thead { background: transparent; } 
.payment-history-table.bbs-table th { border-bottom: transparent; background: var(--regular); padding: 11px 0; } 
.payment-history-table.bbs-table th:first-child { border-top-left-radius: 14px; } 

.payment-history-table.bbs-table th:last-child { border-top-right-radius: 14px; } 
.payment-history-table tbody tr:hover { background: #fafafa; }


/* ─── Payment Method Management Page ─── */
.combo-notice.notice-payment .combo-notice__hd{font-size: 16px; font-weight: 400;}
.payment-method-section { position: relative; margin-bottom: 32px; } 
.payment-method-header {display: flex;align-items: center;gap: 16px;} 
.payment-method-title { font-size: 14px; font-weight: 500; color: var(--black); letter-spacing: -0.35px; } 
.payment-method-info { display: flex; align-items: center; gap: 4px; } 
.payment-method-info-icon { width: 16px; height: 16px; display: flex; align-items: center; justify-content: center; flex-shrink: 0; } 
.payment-method-info-text { font-size: 13px; color: var(--info); letter-spacing: -0.325px; } 
.payment-method-add-btn { background: white; border: 1px solid rgba(239, 55, 57, 0.8); border-radius: 8px; padding: 8px 12px; height: 36px; cursor: pointer; display: flex; align-items: center; gap: 4px; font-size: 14px; color: #ef3739; font-weight: 400; float: right; margin-left: auto; } 
.payment-method-add-btn:hover { background: #ffebee; } 
.payment-method-cards {display: flex; flex-direction: column; gap: 32px; } 
.payment-method-item{display: flex; gap: 32px;}
.payment-method-card {background: var(--regular);border: 1px solid #e5e5ec;border-radius: 14px;padding: 24px 16px;display: flex;flex-direction: column;gap: 24px;position: relative;width: 414px;} 
.payment-method-card.active {background: var(--system-red-500);border: 2px solid var(--main-80);padding: 24px 16px;} 
.payment-method-card-header { display: flex; justify-content: space-between; align-items: flex-end; gap: 24px; } 
.payment-method-card-info { flex: 1; display: flex; flex-direction: column; gap: 16px; } 
.payment-method-card-type { display: flex; gap: 16px; align-items: center; } 
.payment-method-card-icon { width: 40px; height: 24px; background: white; border: 0.6px solid #a2a2a2; border-radius: 2px; display: flex; align-items: center; justify-content: center; flex-shrink: 0; overflow: hidden; } 
.payment-method-card-type-name { font-size: 14px; color: var(--black); letter-spacing: -0.35px; } 
.payment-method-card-number { font-size: 20px; font-weight: 500; color: var(--black); letter-spacing: -0.5px; font-family: 'Pretendard', sans-serif; } 
.payment-method-card-expiry {display: flex;gap: 8px;align-items: center;justify-content: space-between;} 
.payment-method-card-expiry-label { font-size: 14px; font-weight: 500; color: var(--sub); letter-spacing: -0.35px; } 
.payment-method-card-expiry-value {font-size: 12px;color: var(--sub);letter-spacing: -0.3px;line-height: 1;} 
.payment-method-card-logo {width: 40px;height: auto;flex-shrink: 0;display: flex;} 
.payment-method-card-actions {display: flex;justify-content: right;gap: 16px;} 
.btn-comm.secondary.payment-method-card-btn {border-radius: 8px; padding: 8px 12px; height: 36px; cursor: pointer; font-size: 14px; font-weight: 400; } 
.btn-comm.secondary.payment-method-card-btn.disabled { background: var(--regular); border: 1px solid #e5e5ec; color: var(--disabled); cursor: not-allowed; } 
.payment-method-card-btn:hover:not(.disabled) { background: #f7f7fb; } 
.payment-method-badge {background: var(--main);color: white;padding: 3px 8px;border-radius: 4px;font-size: 11px;font-weight: 500;letter-spacing: -0.275px;display: inline-block;position: absolute;top: -10px;left: 16px;} 
.payment-method-notes{border-radius: 14px; background: var(--bg-lightBlue); padding: 16px;}
.payment-method-notes  .caution-box__list li{color: var(--info);}
.payment-method-notes  .caution-box__list li:first-child{margin-top: 0;} 

.search-item-channel{display: none;}

@media (max-width: 1440px){
    .cregist-layout:has(.cregist-aside){
        flex-direction: column;
    }
   
}

@media (max-width: 1024px) {
    .payment-method-cards { grid-template-columns: repeat(2, 1fr); gap: 16px; } 
     .select-tab-actions { position: static; margin-bottom: 16px; } 
    .select-notice-card { width: 100%; max-width: none; } 
    .select-summary-row { align-items: flex-start; flex-direction: column; padding: 16px; } 
    .select-summary-group { flex-wrap: wrap; gap: 12px 24px; } 
    .select-search-box { width: 100%; } 
    .row-item .card-item.select-notice-card{width: 100%;max-width: 100%;padding: 16px 24px;}
    .select-notice-card ~ .select-tab-actions {position: static;  margin-bottom: 0;}
    .row-item:has(.select-summary-card) { flex-direction: column; align-items: baseline; } 
    .payment-info-row { flex-direction: column; } /* 3차 s26①: nowrap 전환에 따른 세로 스택 명시 */
    .payment-usage-card { width: 100%; flex: none; } 
    .payment-bizmoney-card { width: 100%; flex: none; } 
}

@media (max-width: 768px) {
    .payment-method-cards { grid-template-columns: 1fr; gap: 16px; } 
    .select-tab-actions { flex-wrap: wrap; justify-content: flex-start; width: 100%; } 
    .btn-action { flex: 1 1 140px; justify-content: center; } 
    .table-scrollbar { width: 180px; } 
    .select-notice-title { font-size: 14px; } 
    .select-notice-title .ico { width: 14px; height: 14px; } 
    .select-notice-item { font-size: 13px; } 
    .select-summary-item strong { font-size: 16px; } 
    .select-summary-label { font-size: 14px; } 
    .select-summary-label .ico { width: 16px; height: 16px; } 
    .row-item .card-item.select-summary-card { padding: 27px 24px; gap: 16px; } 
    form:has(.search-form) { width: 100%;}
    .card-item.select-table-card {padding: 16px;}
    .select-table-title {font-size: 16px;}
    .select-table-bottom {justify-content: flex-start;}
    .comm-box__tit { font-size: 16px; } 
    .comm-box__tit .ico { width: 24px; height: 24px; } 
    .cost-total-row__label { font-size: 14px; } 
    .cost-total-row__amount { font-size: 16px; } 
    .cost-total-row__val { gap: 4px; } 
    .crecommend-guide-box { width: 100%; padding: 16px; gap: 24px; margin-bottom: 0; } 
    .crecommend-guide-title { font-size: 16px; } 
    .crecommend-guide-title .ico { width: 16px; height: 16px; } 
    .crecommend-guide-text { font-size: 14px; } 
    .crecommend-guide-header { margin-bottom: 8px; } 
    .crecommend-guide-right { display: flex; justify-content: flex-end; width: 100%; } 
    .crecommend-guide-btn.btn-comm.type-line-main { height: 36px; border-width: 2px; padding: 0 20px; } 
    .cregist-progress{display: none;}   
    .load-campaign-top .page-title_wrap { display: flex; } 
    .load-campaign-top .modal-message { display: none; } 
    .search-item-channel{display: flex;}
    .load-campaign-top .search-form { flex-wrap: wrap; align-items: flex-start; } 
    .load-campaing-top .form-control { width: 100%; } 
    .load-campaign-top .search-item .wrap-input.inner { min-width: auto; width: 100%; } 
    .load-campaign-top .search-item .wrap-input.inner .form-control { width: 100%; } 
    .load-campaign-top .search-item:has(.wrap-input) { width: 100%; } 
    .load-campaign-modal.modal-overlay.type2 .modal-wrap { max-width: calc(100% - 32px); height: 80vh; } 
    .payment-table-wrapper {margin-top: 40px;}
   
}

/* ─── Blacklist Management Page (Figma 디자인 기준) ─── */
/* 안내 배너 (오렌지 + 전구 아이콘) */
.blacklist-notice { background: #fff3e0; border-radius: 14px; padding: 16px 32px; display: flex; gap: 4px; align-items: center; } 
.blacklist-notice .ico-lightbulb { width: 24px; height: 24px; flex-shrink: 0; }
.blacklist-notice-text { font-size: 16px; color: var(--sub); line-height: 1.4; letter-spacing: -0.4px; }

/* 검색 + 추가 버튼 행 */
.blacklist-action-row { display: flex; justify-content: flex-end; align-items: center; gap: 8px; } 
.blacklist-search-pill { display: inline-flex; align-items: center; width: 412px; height: 40px; background: var(--regular); border: 0.6px solid var(--regular); border-radius: 999px; padding: 0 14px 0 16px; } 
.blacklist-search-input { flex: 1; min-width: 0; height: 100%; background: transparent; border: 0; outline: 0; font-size: 14px; color: var(--black); letter-spacing: -0.35px; } 
.blacklist-search-input::placeholder { color: var(--info); } 
.blacklist-search-btn { flex-shrink: 0; width: 20px; height: 20px; background: transparent; border: 0; padding: 0; cursor: pointer; display: inline-flex; align-items: center; justify-content: center; } 
.blacklist-search-btn .ico { width: 20px; height: 20px; } 

.blacklist-add-btn { height: 36px; padding: 8px 12px; background: rgba(239, 55, 57, 0.8); border: 0; border-radius: 10px; color: var(--white); font-size: 14px; font-weight: 500; letter-spacing: -0.35px; cursor: pointer; display: inline-flex; align-items: center; gap: 8px; } 
.blacklist-add-btn:hover { background: #ef3739; } 
.blacklist-add-btn .ico-plus { width: 16px; height: 16px; } 

/* 테이블 (paymentHistory의 bbs-table 스타일 재사용 + 텍스트 가운데 정렬) */
.blacklist-history-table thead { background: transparent; } 
.blacklist-history-table.bbs-table th { background: var(--regular); border-bottom: 0; font-weight: 500; color: var(--sub); } 
.blacklist-history-table.bbs-table th:first-child { border-top-left-radius: 14px; }
.blacklist-history-table.bbs-table th:last-child { border-top-right-radius: 14px; }
.blacklist-history-table tbody tr:hover { background: #fafafa; }

/* 삭제 버튼 (Figma: 흰색 배경 + 회색 테두리 + 빨간 텍스트, pill) */
.blacklist-action-btn { height: 28px; background: var(--white); border: 1px solid var(--line-gray); border-radius: 999px; color: var(--main); font-size: 14px; letter-spacing: -0.35px; cursor: pointer; display: flex; width: 104px; padding: 4px 0; justify-content: center; align-items: center; } 
.blacklist-action-btn:hover { background: #fff5f5; }
.blacklist-table-wrapper { width: 100%; }

/* ─── FAQ Page ─── */
.faq-page-title { font-size: 24px; font-weight: 500; color: var(--black); margin: 0 0 24px; letter-spacing: -0.6px; line-height: 1.4; }
.faq-container { background: #fff; border-radius: 14px; padding: 32px 52px; box-shadow: 6px 6px 54px rgba(0, 0, 0, 0.05); }
.faq-description { margin-bottom: 32px; }
.faq-description p { margin: 0; font-size: 16px; color: var(--sub); line-height: 1.4; letter-spacing: -0.4px; }
.faq-popular-section { margin-bottom: 24px; }
.faq-popular-header { display: flex; align-items: center; gap: 4px; margin-bottom: 16px; }
.faq-popular-header h3 { font-size: 16px; font-weight: 500; color: var(--black); margin: 0; letter-spacing: -0.4px; line-height: 1.4; }
.faq-popular-grid {display: flex;flex-wrap: wrap;gap: 16px;max-width: 900px;}
.faq-popular-item {display: flex;justify-content: space-between;align-items: center;gap: 16px;padding: 16px;background: #f5f5f5;border: none;border-radius: 10px;cursor: pointer;transition: background 0.2s;box-shadow: 3px 2px 6px -1px rgba(35, 48, 59, 0.06);text-align: left;min-width: 248px;}
.faq-popular-item:hover { background: #ececec; }
.faq-popular-item span { font-size: 14px; color: var(--black); letter-spacing: -0.35px; flex: 1; line-height: 1.45; }
.faq-control-section { position: relative; margin-top: 16px; margin-bottom: 0; }
.faq-search-box { display: flex; align-items: center; justify-content: flex-end; margin-bottom: 16px; }
.faq-category-tabs { display: flex; gap: 24px; border-bottom: 1px solid #e5e5ec; padding: 0; }
.faq-category-tab { padding: 8px 0; min-width: 100px; background: none; border: none; font-size: 16px; color: var(--sub); font-weight: 400; cursor: pointer; transition: color 0.2s; letter-spacing: -0.4px; line-height: 1.4; text-align: center; font-family: inherit; position: relative; }
.faq-category-tab:hover { color: var(--black); }
.faq-category-tab.active { color: #ef3739; font-weight: 500; }
.faq-category-tab.active::after { content: ''; position: absolute; left: 50%; transform: translateX(-50%); bottom: -2px; width: 100%; height: 2px; background: #ef3739; border-radius: 2px; }
.faq-list-section {margin-top: 8px; display: flex; flex-direction: column; background: transparent; border: none; border-radius: 0; overflow: visible; margin-bottom: 0; box-shadow: none; }
.faq-item {border-bottom: 1px solid #f1f1f5;}
.faq-item + .faq-item { border-top: none; }
.faq-header { display: flex; justify-content: space-between; align-items: center; gap: 32px; padding: 24px; background: #fff; border: none; cursor: pointer; width: 100%; text-align: left; transition: background 0.2s; font-family: inherit; }
.faq-header:hover { background: #fafafa; }
.faq-header-content { display: flex; gap: 24px; align-items: center; flex: 1; min-width: 0; }
.faq-category-label { font-size: 15px; font-weight: 500; color: var(--black); letter-spacing: -0.375px; width: 80px; flex-shrink: 0; line-height: 1.45; }
.faq-question { font-size: 15px; font-weight: 400; color: var(--black); letter-spacing: -0.375px; flex: 1; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; line-height: 1.45; }
.faq-item-expanded .faq-header { background: #fff; }
.faq-item-expanded .faq-header  i{ transform: rotate(180deg); }
.faq-answer {display: flex;flex-direction: column;overflow: hidden;max-height: 0;padding: 0 32px;background: var(--bg-lightBlue);font-size: 15px;color: var(--black);line-height: 1.6;letter-spacing: -0.375px;opacity: 0;transition: max-height 0.3s cubic-bezier(0.4, 0, 0.2, 1), padding-top 0.3s ease, padding-bottom 0.3s ease, opacity 0.25s ease;will-change: max-height;border-top: 1px solid #F1F1F5;}
.faq-item-expanded .faq-answer { padding: 32px 32px 40px; opacity: 1; }
.faq-answer p { margin: 0; }
.faq-answer br { display: none; }
.faq-answer > p + p { margin-top: 0; }
.faq-pagination { display: flex; justify-content: flex-end; align-items: center; gap: 0; padding: 24px 0 0; margin-top: 24px; }
.faq-pagination-btn { width: 32px; height: 32px; border: 1px solid #e5e5ec; background: #fff; cursor: pointer; font-size: 13px; color: var(--sub); display: flex; align-items: center; justify-content: center; font-weight: 400; padding: 0; transition: background 0.2s; }
.faq-pagination-btn + .faq-pagination-btn { border-left: none; }
.faq-pagination-btn:hover:not(.active) { background: #f7f7fb; }
.faq-pagination-btn.active { background: #eaeaea; color: var(--sub); font-weight: 500; }
.faq-pagination-prev { border-radius: 99px 0 0 99px; width: 40px; }
.faq-pagination-next { border-radius: 0 99px 99px 0; width: 40px; }

@media (max-width: 1280px) {
    .faq-container { padding: 32px; }
}

@media (max-width: 1024px) {
    .faq-popular-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .faq-search-box { width: 100%; }
    .faq-category-tab { min-width: auto; padding: 8px 12px; }
}

@media (max-width: 768px) {
    .faq-container { padding: 24px; }
    .faq-page-title { font-size: 20px; }
    .faq-description p {font-size: 14px;}
    .faq-popular-grid {flex-direction: column;gap: 16px;max-width: none;align-items: flex-start;}
    .faq-popular-item {width: auto;min-width: 0;flex-basis: 100%;padding: 8px 12px;gap: 5px;}
    .faq-popular-item span {white-space: normal;font-size: 12px;}
    .faq-search-box {width: 100%;margin-bottom: 24px;}
    .faq-header {gap: 16px;padding: 6px 8px;}
    .faq-header-content { flex-direction: column; gap: 8px; align-items: flex-start; }
    .faq-category-label {width: auto;display: none;}
    .faq-question { white-space: normal; }
    .faq-answer { padding-left: 4px; padding-right: 4px; }
    .faq-item-expanded .faq-answer {padding: 16px 20px 32px;}
    .faq-popular-header h3 {font-size: 14px;}
    .faq-description {margin-bottom: 24px;}
    .faq-popular-section {margin-bottom: 40px;}
    .cost-section__head-label { display: flex; align-items: center; gap: 16px; font-size: 14px; } 
    .cost-section__head-label::after { content: ''; flex: 1; width: 100%; height: 1px; background: var(--regular); } 
    .cost-row { padding-left: 16px; } 
    .cost-row--sub .cost-row__label { padding-left: 8px; font-size: 12px; } 
    .cost-row__label { font-size: 14px; } 
    .cost-row__value { font-size: 14px; } 
    .cost-row.cost-note { font-size: 12px; justify-content: center; padding: 0; } 
}


/* ── Inquiry Page ── */
.inquiry-container.card-item {padding: 32px 52px; }
.inquiry-table { width: 100%; border-collapse: collapse; table-layout: fixed; }
.inquiry-table colgroup .col-type { width: 140px; }
.inquiry-table colgroup .col-date { width: 130px; }
.inquiry-table colgroup .col-status { width: 110px; }
.inquiry-table colgroup .col-arrow { width: 64px; }

.inquiry-row { cursor: pointer; transition: background-color 0.2s ease; }
.inquiry-row:hover { background-color: #fafafa; }
.inquiry-table.bbs-table .inquiry-row > td {padding: 20px 24px;border-bottom: 1px solid #f1f1f5;font-size: 15px;line-height: 1.45;letter-spacing: -0.35px;color: var(--black);vertical-align: middle;}
.inquiry-table.bbs-table .inquiry-row > td.inquiry-type { font-weight: 500; }
.inquiry-table.bbs-table .inquiry-row > td.inquiry-title { color: var(--black); font-weight: 400; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; text-align: left;}
.inquiry-table.bbs-table .inquiry-row > td.inquiry-date {color: var(--info);text-align: center;font-weight: 400;font-size: 14px;}
.inquiry-table.bbs-table .inquiry-row > td:nth-child(4) { text-align: center; }
.inquiry-status {display: inline-block;font-size: 14px;font-weight: 400;line-height: 1.45;letter-spacing: -0.325px;text-align: center;}
.inquiry-status-completed {color: var(--main);}
.inquiry-status-waiting { color: #767676; }
.inquiry-icon-arrow { display: inline-block; vertical-align: middle; }

.inquiry-answer-row > td.inquiry-answer-cell {padding: 0;border-bottom: 1px solid #f1f1f5;height: 0;border-bottom: none;}
.inquiry-answer { overflow: hidden; max-height: 0; background: #F9FAFB; opacity: 0; transition: max-height 0.3s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.25s ease; will-change: max-height; }
.inquiry-row-expanded + .inquiry-answer-row .inquiry-answer { opacity: 1; }
.inquiry-row-expanded .inquiry-arrow-cell i{transform: rotate(180deg);}
.inquiry-answer-content {padding: 32px;}
.inquiry-qa {display: flex;flex-direction: column;gap: 24px;}
.inquiry-q, .inquiry-a {display: flex;gap: 8px;align-items: flex-start;}
.inquiry-q {border-bottom: 1px solid #E5E5EC; padding-bottom: 24px;}
.inquiry-q-label, .inquiry-a-label { flex-shrink: 0; font-weight: 600; font-size: 14px; line-height: 1.6; min-width: 20px; }
.inquiry-q-label {color: var(--black);font-size: 15px;font-weight: 500; /* 21.75px */letter-spacing: -0.375px;}
.inquiry-a-label {color: var(--main);font-size: 15px;font-weight: 500;letter-spacing: -0.375px;}
.inquiry-q p, .inquiry-a p {color: var(--black);font-size: 15px;font-weight: 400;line-height: 1.6;margin: 0;letter-spacing: -0.35px;text-align: left;}
.inquiry-q-divider {}
.inquiry-mo-top { display: none; }
.inquiry-bottom-row { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 24px 32px 0; }
.inquiry-submit-btn { display: inline-flex; align-items: center; justify-content: center; padding: 10px 24px; border-radius: 8px; background: #ef3739; color: #fff; font-size: 14px; font-weight: 500; border: none; cursor: pointer; font-family: inherit; letter-spacing: -0.35px; transition: background 0.2s; }
.inquiry-submit-btn:hover { background: #d52e30; }


/* ── Inquiry Error State ── */
.inquiry-error-state { width: 100%; display: flex; align-items: center; justify-content: center; padding: 80px 24px; background: var(--white); border-radius: 14px; box-shadow: 6px 6px 54px 0 rgba(0, 0, 0, 0.05); margin-bottom: 32px; }
.inquiry-error-container { display: flex; flex-direction: column; align-items: center; gap: 24px; text-align: center; }
.inquiry-error-icon { width: 80px; height: 80px; display: flex; align-items: center; justify-content: center; color: #c1c1c8; }
.inquiry-error-icon svg { width: 100%; height: 100%; stroke-width: 1; }
.inquiry-error-title { color: #181a1d; font-size: 20px; font-weight: 600; line-height: 1.4; margin: 0; }
.inquiry-error-description { color: #54565b; font-size: 16px; font-weight: 400; line-height: 1.4; margin: 0; }

@media (max-width: 1024px) {
    .inquiry-table colgroup .col-type { width: 110px; }
    .inquiry-table colgroup .col-date { width: 110px; }
    .inquiry-table colgroup .col-status { width: 90px; }
    .inquiry-table colgroup .col-arrow { width: 56px; }
    .inquiry-table thead th { padding: 14px 16px; }
    .inquiry-row > td { padding: 18px 16px; }
    .inquiry-row > td.inquiry-arrow-cell { padding: 18px 12px 18px 0; }
    .inquiry-bottom-row { padding: 20px 20px 0; }
    .inquiry-answer-content { padding: 20px; }
}

@media (max-width: 768px) {
    .inquiry-table colgroup,
    .inquiry-table thead { display: none; }
    .inquiry-table, .inquiry-table tbody, .inquiry-table tr, .inquiry-table td {display: block;width: auto;padding: 0;}

    /* 카드 컨테이너 흰 배경 복원 */
    .contents-bbs:has(.inquiry-table) .bbs-board-card.card-item {background: var(--white);box-shadow: 6px 6px 54px 0 rgba(0, 0, 0, 0.05);border-radius: 14px;padding: 24px 14px;}

    /* 각 문의 = 카드 행 */
    .inquiry-table.bbs-table .inquiry-row {position: relative;display: block;padding: 13px 8px;border: 0;}
    .inquiry-table.bbs-table .inquiry-row > td { display: block; width: auto; height: auto; padding: 0; border-bottom: none; text-align: left; }
    .inquiry-table.bbs-table .inquiry-row > td.inquiry-type { display: none; }
    .inquiry-table.bbs-table .inquiry-row > td.inquiry-title {white-space: nowrap;overflow: hidden;text-overflow: ellipsis;padding-right: 32px;}
    .inquiry-table.bbs-table .inquiry-row > td.inquiry-date {position: absolute;right: 16px;bottom: 13px;text-align: right;font-size: 13px;color: var(--info);}
    .inquiry-status {font-size: 13px;}
    .inquiry-table.bbs-table .inquiry-row > td:nth-child(4) {margin-top: 10px;text-align: left;}
    .inquiry-row > td.inquiry-arrow-cell {position: absolute;right: 16px;top: 13px;padding: 0;width: auto;}

    /* 모바일 상단: 문의하기 버튼 + 내 문의 내역 헤딩 */
    .inquiry-mo-top {display: block;padding: 0 2px 0;}
    .inquiry-mo-write-btn { display: inline-flex; align-items: center; justify-content: center; height: 36px; padding: 8px 20px; border-radius: 10px; background: rgba(239, 55, 57, 0.8); color: #fff; font-size: 13px; font-weight: 500; line-height: 1; border: none; cursor: pointer; font-family: inherit; letter-spacing: -0.325px; }
    .inquiry-mo-heading {margin: 38px 0 0;padding-bottom: 12px;padding-left: 20px;border-bottom: 1.5px solid var(--main);color: var(--sub);font-size: 14px;font-weight: 500;line-height: 1.4;}

    /* 모바일 하단: 문의하기 버튼 숨김, 페이지네이션 가운데 정렬 */
    .select-table-bottom.jc-between { justify-content: center; }
    .select-table-bottom.jc-between > .btn-comm.bg-red { display: none; }
    .select-table-bottom.jc-between .pagination-wrap { justify-content: center; width: 100%; }

    .inquiry-answer-row { display: block; }
    .inquiry-answer-row > td.inquiry-answer-cell { display: block; height: auto; overflow: visible; }
    .inquiry-bottom-row { flex-direction: column-reverse; align-items: stretch; gap: 16px; padding: 20px 16px 0; }
    .inquiry-submit-btn { width: 100%; }
    .inquiry-pagination { justify-content: center; }
    .inquiry-answer-content {padding: 16px 20px;}
    .inquiry-error-state { padding: 60px 16px ; }
    .inquiry-error-icon { width: 60px ; height: 60px ; }
    .inquiry-error-title { font-size: 18px ; }
    .inquiry-error-description { font-size: 14px ; }

    /* ── 파일 업로드 ── */
    .store-submit-page .file-upload__display { min-width: 0; flex: 1; height: 36px; border-radius: 10px; padding: 0 40px 0 12px; } 
    .store-submit-page .file-upload__text { font-size: 13px; } 
    .store-submit-page .file-wrap { flex-direction: row; align-items: center; gap: 8px; } 
    .store-submit-page .file-upload__trigger { width: auto; white-space: nowrap; } 

    /* ── 이메일 필드 ── */
    .store-submit-page .manager-form__email { display: flex; flex-wrap: nowrap; grid-template-columns: unset; gap: 4px; align-items: center; } 
    .store-submit-page .manager-form__email-input { flex: 0 0 140px; } 
    .store-submit-page .manager-form__email-at { display: block ; font-size: 13px; } 
    .store-submit-page .manager-form__email .select-wrap,
    .store-submit-page .manager-form__email .select-wrap.small { flex: 1; min-width: 0; } /* p14 데스크톱 196px 고정의 모바일 원복 */
    .store-submit-page .manager-form__email .select-wrap .select-btn { height: 36px; font-size: 13px; border-radius: 10px; /* padding: 0 36px 0 12px; */
    width: 100%; } 

    /* ── 연락처 인증 ── */
    .store-submit-page .manager-form__stack {gap: 8px;width: 100%;} 

    /* ── 주소 필드 ── */
    .store-submit-page .manager-form__address { gap: 8px; } 
    .store-submit-page .manager-form__address .wrap-input .form-control { height: 36px; } 
    .store-submit-page .manager-form__address .btn-comm.small { min-height: 36px; } 

    /* ── 제출 영역 ── */
    .store-submit-page .ss-actions { margin-top: 16px; text-align: center; display: flex; flex-direction: column-reverse; } 
    .store-submit-page .ss-actions__caption { font-size: 12px; margin-top: 8px; margin-bottom: 0; width: 100%; } 
    .store-submit-page .ss-actions .btn-comm.btn-disabled { width: 256px; height: 48px; font-size: 15px; font-weight: 500; background: var(--main:); color: #fff; flex: none; } 
    .file-upload__remove { width: 16px; height: 16px; right: 10px; display: flex; align-items: center; justify-content: center; }

    .file-upload__remove i { width: 100%; height: 100%; }
}

/* ── 캠페인 활용 방식 모달 스타일 ── */
.campaign-usage-option {display: flex;flex-direction: column;gap: 8px;margin-top: 8px;}
.check-area .label-check.type-box { border: 1px solid var(--line-gray); border-radius: 10px; padding: 8px 16px; cursor: pointer; transition: all 0.2s ease; display: flex; gap: 16px; align-items: flex-start; }
.check-area .label-check.type-box input[type="radio"] ~ label { flex: 1; cursor: pointer; display: flex; justify-content: space-between; align-items: center; gap: 16px; margin: 0; }
.campaign-option-wrap { display: flex; justify-content: space-between; gap: 4px; flex: 1; }
.campaign-option-wrap strong { font-size: 16px; font-weight: 500; color: var(--black); margin: 0; line-height: 1.4; }

/* ── 카드 등록 모달 스타일 ── */.campaign-option-wrap p { font-size: 14px; color: var(--sub); margin: 0; line-height: 1.45; font-weight: 400; } 
.campaign-option-wrap i { width: 48px; height: 48px; display: flex; align-items: center; justify-content: center; flex-shrink: 0; font-size: 24px; } 
.card-register-form{display:flex;flex-direction:column;justify-content: space-between;}
.form-section:has(.card-register-form){padding: 0;}
.card-register-form .form-grid{gap: 24px;}
/* 재검수 p34 (20260819): 피그마 카드 신규 등록_260323 실측 — 모달 높이 700px,
   [필수] 약관행을 하단(취소/다음 버튼 위)으로 고정(마지막 입력행과 ~136px 여백) */
.modal-wrap.modal-card-register{height: 700px;max-height: calc(100vh - 48px);}
.modal-card-register .form-section:has(.card-register-form){flex: 1;min-height: 0;}
.modal-card-register .card-register-form{flex: 1;}
.secret-dot{width: 8px; height: 8px; border-radius: 50%; background:var(--info);}

/* ===== 이미지 전체보기 Modal ===== */
.modal-overlay.image-gallery-modal .modal-wrap {width: 1280px;max-width: 95vw;height: 744px;max-height: 90vh;overflow: hidden;background: #FFF8F8;box-shadow: 0 8px 20px 0 rgba(0, 20, 55, 0.16);gap: 7px;padding: 0;} 
.image-gallery-header {position: relative;display: flex;align-items: center;height: auto;padding: 32px 0 0 32px;} 
.image-gallery-title { justify-content: flex-start; } 
.image-gallery-tools { display: flex; align-items: center; gap: 12px; flex: 1; } 
.image-gallery-tab {display: inline-flex;align-items: center;gap: 8px;color: var(--sub);font-size: 16px;font-weight: 400;line-height: 140%; /* 22.4px */letter-spacing: -0.4px;} 
.image-gallery-filter { position: relative; margin-left: auto; } 
.image-gallery-filter__btn { display: inline-flex; align-items: center; gap: 4px; height: 33px; padding: 8px 12px; color: var(--sub); font-size: 12px; font-style: normal; letter-spacing: -0.3px;; cursor: pointer; border-radius: 999px; border: 1px solid #A2A2A2; background: #E3E3E3; } 
.image-gallery-filter__btn:hover { background: var(--bg-lightBlue); } 
.image-gallery-filter__menu {position: absolute;top: calc(100% + 4px);right: 0;width: 88px;background: #fff;border: 1px solid #A2A2A2;box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);z-index: 5;overflow: hidden;} 
.image-gallery-filter__menu button {display: block;width: 100%;height: 28px;background: #fff;border: 0;cursor: pointer;color: var(--sub);text-align: center; font-size: 12px;font-weight: 400; /* 17.4px */letter-spacing: -0.3px;border-bottom: 1px solid #A2A2A2;} 
.image-gallery-filter__menu button:last-child { border-bottom: none; }
.image-gallery-filter__menu button:hover { background: #f4f4f4; } 
.image-gallery-filter__menu button.is-selected {background: #f4f4f4;font-weight: 600;} 
.image-gallery-content {overflow-y: auto;flex: 1;padding: 0 35px 32px 32px;margin-right: 19px;} 
.image-gallery-grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 16px; } 

/* 카드 (네이버 리뷰 스타일) */
.gallery-card {background: #fff;border: 1px solid #e5e5ec;border-radius: 14px;padding: 16px 12px;display: flex;flex-direction: column;gap: 8px;} 
.gallery-card__head .card-head__user {display: flex;align-items: center;gap: 6px;font-size: 13px;padding-bottom: 4px;margin-bottom: 4px;border-bottom: 1px solid var(--main);} 
.gallery-card__name { font-weight: 500; } 
.gallery-card__id {margin: 0;color: var(--sub);font-size: 11px;font-weight: 400;line-height: 145%; /* 15.95px */letter-spacing: -0.275px;} 
.gallery-card__bar { display: flex; align-items: center; justify-content: space-between; padding: 4px 0; border-bottom: 1px solid #f0f0f0; font-size: 11px; color: var(--sub); } 
.gallery-card__top { color: #ef3739; font-weight: 600; } 
.gallery-card__icons { display: inline-flex; gap: 4px; opacity: 0.6; } 
.gallery-card__rating { display: flex; align-items: center; gap: 6px; font-size: 11px; color: var(--info:); } 
.gallery-card__rating .stars { color: #ffb800; font-size: 12px; letter-spacing: 1px; } 
.gallery-card__title { font-size: 12px; font-weight: 600; color: var(--black); margin: 4px 0 0; line-height: 1.4; } 
.gallery-card__content { font-size: 11px; line-height: 1.45; color: var(--sub); margin: 0; display: -webkit-box; -webkit-line-clamp: 7; -webkit-box-orient: vertical; overflow: hidden; } 
.gallery-card__image {position: relative;width: 100%;aspect-ratio: calc(200px / 344px);border-radius: 14px;overflow: hidden;background: #f4f4f4;} 
.gallery-card__image img { width: 100%; height: 100%; object-fit: cover; display: block; } 

/* 자세히 보기 버튼 (이미지 위 오버레이) */
.gallery-card__detail-btn {position: absolute;inset: 0;width: 100%;height: 100%;display: flex;align-items: center;justify-content: center;gap: 4px;background: rgba(0, 0, 0, 0);color: #fff;font-size: 12px;font-weight: 400;border: 0;cursor: pointer;opacity: 0;transition: background 0.2s, opacity 0.2s;} 
.gallery-card__detail-btn .ico {width: 14px;height: 14px;} 
.gallery-card__image:hover .gallery-card__detail-btn {background: rgba(0, 0, 0, 0.3);opacity: 1;backdrop-filter: blur(3px);} 
.gallery-card__detail-btn:focus-visible { background: rgba(0, 0, 0, 0.5); opacity: 1; outline: 2px solid #fff; outline-offset: -4px; } 
.gallery-card__footer { display: flex; justify-content: space-between; align-items: center; padding-top: 4px; border-top: 1px solid #f0f0f0; font-size: 10px; color: var(--info:); }
.image-gallery-footer { display: none; }

@media (max-width: 768px) {
    /* 이미지 전체보기 모달: 모바일 바텀시트 + 캐러셀 (Figma MO 995-37106) */
    .modal-overlay.image-gallery-modal { align-items: flex-end; }
    .modal-overlay.image-gallery-modal .modal-wrap { width: 100%; max-width: none; height: 90vh; max-height: 90vh; background: #fff; border-radius: 20px 20px 0 0; gap: 0; padding: 0; }

    .image-gallery-header { justify-content: center; height: 56px; padding: 0; }
    .image-gallery-title { justify-content: center; }
    .image-gallery-header .modal-title-text { font-size: 20px; letter-spacing: -0.5px; }
    .image-gallery-modal .modal-close { right: 20px; top: 16px; width: 24px; height: 24px; }

    .image-gallery-content { flex: 1; min-height: 0; gap: 24px; padding: 12px 20px 24px; margin: 0; overflow-y: auto; }
    .image-gallery-tools { gap: 8px; }
    .image-gallery-tab { font-size: 16px; letter-spacing: -0.4px; }

    /* 캐러셀: 카드 1개씩 표시 */
    .image-gallery-grid { display: block; }
    .image-gallery-grid .gallery-card { display: none; max-width: 280px; margin: 0 auto; }
    .image-gallery-grid .gallery-card.is-active { display: flex; }

    /* 푸터: 이전/다음 */
    .image-gallery-footer { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 12px 20px; border-top: 1px solid #f1f1f5; background: #fff; }
    .image-gallery-nav { height: 48px; padding: 8px 24px; border: 0; border-radius: 10px; font-size: 15px; letter-spacing: -0.375px; cursor: pointer; }
    .image-gallery-nav--prev { background: #f1f1f5; color: #505050; }
    .image-gallery-nav--next { background: #ef3739; color: #fff; }
    .image-gallery-nav:disabled { opacity: 0.4; cursor: default; }
    .campaign-option-wrap i { display: none; } 
    .campaign-option-wrap strong, .campaign-option-wrap p { font-size: 13px; } 
    .pay-add-modal .form-section { flex-direction: column; } 
    .pay-add-modal.modal-overlay { align-items: flex-end; } 
    .pay-add-modal.modal-overlay .modal-wrap { max-width: 100%; } 
    .modal-title.jc-start { justify-content: center !important; } 
    .pay-add-modal.modal-overlay { align-items: flex-end; } 
    .pay-add-modal.modal-overlay .modal-wrap { max-width: 100%; height: calc(100% - 80px); } 
    .modal-title.jc-start { justify-content: center !important; } 
    .check-area .label-check input[type=radio] ~ label { font-size: 14px; } 
    .check-area .label-check input[type=radio] ~ label::before { width: 16px; height: 16px; } 
    .pay-add-modal .wrap-input .form-control.xsmall { width: 72px; flex: none; } 
    .card-register-form { height: 100%; } 

}
/* ===== 운송장 정보 업로드 Modal ===== */
.modal-overlay.tracking-upload-modal .modal-wrap {width: 640px;max-width: 92vw;height: auto;} 
.tracking-upload-box {display: flex;align-items: center;gap: 8px;height: 48px;padding: 10px 8px;background: #F7F7FB;border: 1px solid var(--line-gray);margin: 0 auto;max-width: 504px;width: 100%;border-radius: 4px;} 
.tracking-upload-file { display: flex; align-items: center; gap: 8px; flex: 1; min-width: 0; } 
.tracking-upload-file .ico-file { width: 20px; height: 20px; flex-shrink: 0; } 
.tracking-upload-filename {white-space: nowrap;overflow: hidden;text-overflow: ellipsis;color: var(--info);text-align: center; font-size: 14px;font-weight: 400; /* 20.3px */letter-spacing: -0.35px;} 
.tracking-upload-btn { flex-shrink: 0; height: 28px; padding: 0 11px; background: #fff; border: 1px solid #e5e5ec; border-radius: 6px; font-size: 12px; color: var(--sub); cursor: pointer; display: inline-flex; align-items: center; justify-content: center; transition: background 0.15s; } 
.tracking-upload-btn:hover { background: var(--bg-lightBlue); color: var(--black); } 
.tracking-upload-helper {margin: 16px 0 0;text-align: center;font-size: 18px;color: var(--black);letter-spacing: -0.45px;} 
.tracking-upload-sample { color: var(--black); text-decoration: underline; cursor: pointer; } 
.tracking-upload-sample:hover { color: #ef3739; }

.complete-wrap { display: flex; flex-direction: column; align-items: center; justify-content: center; min-height: 600px; gap: 32px; padding: 60px 40px; } 
.complete-icon { width: 80px; height: 80px; border-radius: 50%; background: rgba(67,160,71,0.1); display: flex; align-items: center; justify-content: center; } 
.complete-title { font-size: 28px; font-weight: 600; color: var(--black); letter-spacing: -0.7px; text-align: center; } 
.complete-desc { font-size: 16px; color: var(--sub); letter-spacing: -0.4px; text-align: center; line-height: 1.6; } 
.complete-btns { display: flex; gap: 12px; align-items: center; margin-top: 8px; } 
.complete-btn-primary { height: 48px; padding: 0 32px; background: rgba(239,55,57,0.8); color: #fff; border: none; border-radius: 10px; font-size: 16px; font-weight: 500; font-family: inherit; cursor: pointer; letter-spacing: -0.4px; transition: background 0.15s; } 
.complete-btn-primary:hover { background: #ef3739; } 
.complete-btn-secondary { height: 48px; padding: 0 32px; background: #fff; color: var(--sub); border: 1px solid #a2a2a2; border-radius: 10px; font-size: 16px; font-weight: 500; font-family: inherit; cursor: pointer; letter-spacing: -0.4px; transition: background 0.15s; } 
.complete-btn-secondary:hover { background: var(--bg-lightBlue); } 
.complete-info-card { background: var(--bg-lightBlue); border: 1px solid #e5e5ec; border-radius: 14px; padding: 24px 32px; width: 100%; max-width: 600px; } 
.complete-info-tit { font-size: 15px; font-weight: 500; color: var(--black); letter-spacing: -0.375px; margin-bottom: 12px; display: flex; align-items: center; gap: 6px; } 
.complete-info-list { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 8px; } 
.complete-info-list li { display: flex; align-items: flex-start; gap: 8px; font-size: 14px; color: var(--sub); letter-spacing: -0.35px; line-height: 1.5; } 
.complete-info-list li::before { content: ''; width: 4px; height: 4px; border-radius: 50%; background: #a2a2a2; flex-shrink: 0; margin-top: 8px; } 


/* ===== 모집일정 연장 Modal ===== */
.extend-desc { text-align: center; color: #767676; font-size: 14px; line-height: 1.5; }
.extend-desc__highlight { color: #ef3739; font-weight: 600; }
.extend-form { display: flex; flex-direction: column; gap: 12px; margin-top: 20px; }
.extend-row { display: flex; align-items: center; gap: 12px; }
.extend-label { width: 32px; flex-shrink: 0; font-size: 14px; color: var(--black); text-align: left; }
.extend-sep { font-size: 14px; color: var(--sub); }
.extend-input { flex: 1; min-width: 0; height: 42px; padding: 0 16px; border: 1px solid transparent; border-radius: 8px; font-size: 14px; font-family: inherit; color: var(--black); box-sizing: border-box; cursor: default; } 
.extend-input.is-readonly { background: #f4f4f4; color: #767676; } 
.extend-input.is-editable { background: #fff; border-color: #111; color: var(--black); cursor: pointer; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20' fill='none' stroke='%23111' stroke-width='2'%3E%3Cpolyline points='6 8 10 12 14 8'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 12px center; padding-right: 36px; }

/* ===== 내 정보 (myInfo) 스타일 ===== */
.myinfo-card.card-item{padding: 40px 56px;}
.myinfo-profile{position: relative;padding: 10px;display: inline-flex;}
.myinfo-profile .profile-image{width: 82px; height: 82px; border-radius: 50%; background: #E6E6E6; display: flex; align-items: center; justify-content: center;}
.profile-image-input + label{display: flex;align-items: center;justify-content: center;position: absolute;bottom: 12px;right: 12px;}
.myinfo-form { display: flex; flex-direction: column; gap: 32px; margin-top: 32px; } 
.form-section-row { display: flex; gap: 32px; } 
.myinfo-form .form-section { padding: 0; border: 0; width: 504px; display: flex; flex-direction: column; gap: 0; flex: none; } 
.myinfo-form .form-section-header { padding: 16px; border-radius: 14px 14px 0 0; border: 1px solid var(--line-gray); background: #F7F7FB; } 
.myinfo-form .form-section-header h3 { color: var(--black); font-size: 16px; font-weight: 500; line-height: 140%; /* 22.4px */
 letter-spacing: -0.4px; } 
.myinfo-form .form-section-body { border-radius: 0 0 14px 14px; border: 1px solid var(--line-gray); background: var(--white); padding: 16px; border-top: 0; } 
.myinfo-form .form-notice-text { color: var(--info); font-size: 12px; font-weight: 400; letter-spacing: -0.3px; } 
.myinfo-form .form-field { flex-direction: row; gap: 8px; align-items: center; } 
.myinfo-form .form-field .wrap-input {flex: 1;} 
.myinfo-form .form-field .form-control { padding: 8px 16px; font-size: 14px; } 
.myinfo-form .form-field .form-control.nickname { height: 36px; color: var(--sub); } 
.myinfo-form .form-label { flex: none; min-width: 72px; margin-bottom: 0; color: var(--sub); } 
.myinfo-form .form-grid { margin-top: 16px; } 
.form-text { color: var(--disabled); font-size: 14px; font-weight: 400; letter-spacing: -0.35px; } 
.form-section-manager .form-label { min-width: 80px; } 
.myinfo-form .select-wrap.small,
.myinfo-form .select-wrap.small .ss-main { width: 136px; }
.myinfo-form .select-wrap .ss-main .ss-values .ss-single { color: var(--info) }
/* 재검수 p40 (20260819): 피그마 내 정보_260408 실측 — 이메일 로컬 227px + 도메인 셀렉트 136px
   (flex:1 균등 수축으로 181+181px이 되던 것 수정), 열림 목록 폭도 136px 일치.
   로컬은 227px 상한까지 확장(1 1 0) — "@" 렌더 폭 차이로 행이 1~2px 넘치면 줄바꿈 대신 로컬만 소폭 축소 */
.myinfo-form .form-field .manager-form__email-input { flex: 1 1 0%; max-width: 227px; }
.myinfo-form .manager-form__email .select-wrap.small { flex: 0 0 136px; }
.myinfo-form .select-wrap.small .ss-content { width: 136px; }
/* 재검수 p40 (20260819): 사업자등록증 파일 입력 284px (피그마 실측) */
.myinfo-form .file-upload__display {display: grid;flex: 0 0 284px;width: 284px;min-width: auto;}
/* 재검수 p40 (20260819): 사업자등록증 완료 카드(미리보기 박스) 384×132 (피그마 실측) */
.myinfo-form .form-file-upload { height: 132px; }
.myinfo-form .form-file-upload .file-preview img { height: 100px; width: auto; }
.form-section-half .form-label { min-width: 80px; } 
.form-file-upload { border-radius: 10px; border: 1px solid var(--line-gray); background: #F1F1F5; width: 100%; padding: 16px; display: flex; align-items: center; gap: 16px; } 
.form-file-upload .file-name-section {display: flex;gap: 4px;align-items: center;flex-wrap: wrap;} 
.form-file-upload .file-name { overflow: hidden; color: var(--Font-03_Sub, #505050); text-overflow: ellipsis; font-family: Pretendard; font-size: 14px; font-style: normal; font-weight: 400; line-height: 145%; /* 20.3px */
 letter-spacing: -0.35px; } 
.form-file-upload .file-status.success { overflow: hidden; color: var(--system-green-600); text-overflow: ellipsis; font-size: 12px; font-weight: 400; line-height: 145%; /* 17.4px */
 letter-spacing: -0.3px; display: flex; align-items: center; gap: 4px; } 
.form-file-upload .file-status.success .ico-isActive { width: 14px; height: 14px; } 
.file-actions { margin-top: 16px; } 
.file-actions .btn-comm.tertiary { padding: 8.5px 12px; min-height: auto; height: auto; } 

/* ===== 블랙리스트 추가 Modal ===== */
.modal-wrap--wide { width: 600px; } 
.blacklist-form-group { flex-direction: column; align-items: flex-start; width: 100%; } 
.blacklist-form-wrap{display: flex;flex-direction: column;gap: 12px; margin-bottom: 26px;}

/* noResult */
.noResult{display: flex;flex-direction: column;align-items: center;justify-content: center;height: 100%;}
.noResult-tit{color: #181A1D; text-align: center; font-size: 28px; font-weight: 600; line-height: 140%; letter-spacing: -0.7px;}
.noResult-desc{margin-top: 12px; color: #54565B; text-align: center; font-size: 18px; font-weight: 400; line-height: 140%; letter-spacing: -0.45px;}
.noResult-btn{margin-top: 32px;}
.noResult-btn .btn-comm.bg-red{background: var(--main); color: var(--white);}
.noResult.type-search{gap: 40px;}
.noResult.type-search .noResult-tit{font-size: 20px;}
.noResult.type-search .noResult-desc{font-size: 16px;}

.height_auto{overflow-y: auto; flex: 1;}


/* ===== 광고상품 페이지 ===== */
.ad-product_intro { text-align: center; margin: 16px 0 32px; }
.ad-product_intro .intro-title { font-size: 28px; font-weight: 500; color: #111; letter-spacing: -0.7px; line-height: 1.4; }
.ad-product_intro .intro-desc { margin-top: 4px; font-size: 16px; color: #505050; letter-spacing: -0.4px; line-height: 1.4; }

/* 재검수 p37 (20260819): 피그마 광고상품_260512 실측 — 구분선↕소제목 56px / 소제목↕카드 35px / 카드↕구분선 56px (기존 32/20) */
.ad-product_section { position: relative; padding: 56px 0; border-top: 1px solid #E5E5EC; }
.ad-product_section:first-of-type { border-top: 0; padding-top: 8px; }
/* 피드백 A1: 검색노출·구매전환 위 줄 삭제 — .ad-product_intro(div)가 first-of-type을 차지해 첫 섹션에 border-top이 남던 문제 보정 */
.ad-product_intro + .ad-product_section { border-top: 0; padding-top: 8px; }

.ad-product_section-title { display: flex; align-items: center; gap: 6px; font-size: 18px; color: #111; letter-spacing: -0.45px; font-weight: 400; margin-bottom: 35px; } /* 재검수 p37: 소제목→카드 35px */
.ad-product_section-title::before { content: ""; width: 4px; height: 4px; background: #2A2A37; display: inline-block; } 

.ad-product_grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; } 

.ad-product_card { background: #fff; border-radius: 14px; padding: 24px 56px; box-shadow: 6px 6px 27px 0 rgba(0,0,0,0.05); display: flex; flex-direction: column; align-items: center; gap: 16px; position: relative; } 
.ad-product_card .card-thumb { width: 100%; height: 104px; border-radius: 14px; border: 1px solid #F1F1F5; display: flex; align-items: center; justify-content: center; overflow: hidden; position: relative; padding: 20px 0; } 
.ad-product_card .card-thumb .thumb-img { width: 64px; height: 64px; border-radius: 14px; display: flex; align-items: center; justify-content: center; background: #fff; overflow: hidden; } 
.ad-product_card .card-thumb .thumb-img.ico-only { box-shadow: 0px 8px 20px 0px #00143729; } 
/* 3차 피드백 s30: 숏폼/구매평/블로그+리뷰 패키지 이미지 확대 — 변경후 시안 기준 원본(1x) 크기 렌더 (기존 패딩 때문에 62px로 축소되던 것을 102px로) */
.ad-product_card .card-thumb .thumb-img.img-only { width: auto; height: 102px; min-width: 0; background: transparent; }
.ad-product_card .card-thumb .thumb-img img { width: 100%; height: 100%; object-fit: cover; border-radius: 14px; }
.ad-product_card .card-thumb .thumb-img.img-only img { width: auto; max-width: 100%; height: 100%; object-fit: contain; border-radius: 0; }
.ad-product_card .card-thumb .thumb-img.ico-only img { width: auto; height: auto; box-shadow: none; border-radius: 0; object-fit: contain; } 


.ad-product_card .card-head { text-align: center; } 
.ad-product_card .card-title { font-size: 18px; font-weight: 500; color: #111; letter-spacing: -0.45px; line-height: 1.4; } 
.ad-product_card .card-sub { margin-top: 4px; font-size: 16px; color: #EF3739; letter-spacing: -0.4px; line-height: 1.4; } 

.ad-product_card .card-feat { display: flex; flex-direction: column; gap: 4px; } 
.ad-product_card .card-feat li { display: flex; align-items: center; gap: 8px; font-size: 14px; color: var(--sub); letter-spacing: -0.35px; line-height: 1.45; } 
.ad-product_card .card-feat li::before { content: ""; display: inline-block; width: 12px; height: 12px; background: url('../img/ico_chk_green.svg') no-repeat center/contain; flex-shrink: 0; } 

/* BEST 리본 */
.ad-product_card .badge-best { position: absolute; top:-27px; left:-47px; z-index: 1; } 
.ad-product_card .badge-best.bottom { top: auto; bottom:-27px; left: auto; right: -96px; } 
/* 호버: 자세히 보기 오버레이 */
.ad-product_card .card-hover { position: absolute; inset: 0; background: rgba(17,17,17,0.3); border-radius: 14px; display: flex; align-items: center; justify-content: center; opacity: 0; transition: opacity .3s ease; pointer-events: none; } 
.ad-product_card:hover .card-hover { opacity: 1; pointer-events: auto; } 
.card-hover .btn-detail-more { display: inline-flex; align-items: center; gap: 4px; background: #fff; border: 1px solid #E5E5EC; border-radius: 10px; height: 48px; padding: 0 24px; font-size: 16px; font-weight: 500; color: #505050; letter-spacing: -0.4px; box-shadow: 2px 4px 12px 0 rgba(17,17,17,0.13); cursor: pointer; } 

.ad-product_card { cursor: pointer; }
.card-hover .btn-detail-more{transition: transform .3s ease, box-shadow .3s ease;}
.card-hover .btn-detail-more:hover { transform: translateY(-5px); box-shadow: 6px 6px 27px 0 rgba(0,0,0,0.1); }
.card-hover .btn-detail-more i{background-image: url("../img/ico_right.svg");}


@media (max-width: 1280px) {
    .ad-product_grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 960px){
    .file-wrap {flex: none;flex-direction: column;align-items: stretch;position: static;} 
    .file-upload__trigger { width: 100%; min-width: 0; } 
    .myinfo-form .file-upload__trigger { position: absolute; bottom: 0; left: 0; width: 100%; background: var(--main-80); border-color: var(--main-80); color: var(--white);} 
    .myinfo-form .form-field { position: relative; } 
    .myinfo-form .form-field:has(.file-wrap) { padding-bottom: 48px; } 
    .myinfo-form .file-upload__display { height: 36px; flex: none; width: 100%; } /* p40 데스크톱 284px 고정의 모바일 원복 */
    .manager-form__email { grid-template-columns: minmax(0, 1fr); } 
    .manager-form__email-at {/* display: none; */} 
}

@media (max-width: 768px) {
    .ad-product_section{padding: 24px 0; border-top: 0;}
    .ad-product_card .badge-best {width: 154px; left: -30px; top: -18px;}
    .ad-product_grid { grid-template-columns: 1fr; gap: 16px; }
    .ad-product_card { padding: 20px 24px; }
    .ad-product_card .badge-best { width: 154px; left: -30px; top: -18px; } 
    .ad-product_card .card-thumb .thumb-img { width: 40px; height: 40px; border-radius: 10px; }
    .ad-product_card .card-thumb .thumb-img.img-only { width: auto; height: 68px; } /* 3차 s30: 모바일은 기존 체감 크기 유지 */
    .ad-product_card[data-platform="press"] .card-thumb .thumb-img img,
    .ad-product_card[data-platform="event"] .card-thumb .thumb-img img{width: 32px; height: 32px; }
    .ad-product_card .card-thumb {height: 80px;padding: 5px 0;} 
    .ad-product_card .card-title { font-size: 16px; } 
    .ad-product_card .card-sub { font-size: 14px; } 
    .ad-product_card .card-feat { display: none; } 
    .ad-product_intro{display: none;}
    .modal-overlay.tracking-upload-modal .modal-wrap{max-width: 100%;}
    .bbs-board-card.card-item .noResult { padding: 60px 16px; border-radius: 14px; background: var(--white); box-shadow: 6px 6px 54px 0 rgba(0, 0, 0, 0.05); gap: 16px; } 
    .noResult-img { width: 80px; height: 80px; } 
    .noResult.type-search .noResult-img{ width: 40px; height: 40px; }
    .noResult-tit, .noResult.type-search .noResult-tit { font-size: 14px; } 
    .noResult-desc, .noResult.type-search .noResult-desc { font-size: 12px; margin-top: 4px; } 
    .noResult-btn { margin: 0; } 
    .noResult-btn .btn-comm.bg-red { height: 36px; padding: 0 20px; font-size: 13px; } 
}

/* ===== 광고상품 상세 팝업 ===== */
.adp-popup-overlay {
    position: fixed; inset: 0; background: rgba(17,17,17,0.6);
    display: none; align-items: center; justify-content: center;
    z-index: 1000; padding: 40px 96px;
}
.adp-popup-overlay.is-open { display: flex; }

.adp-popup-nav {
    position: absolute; top: 50%; transform: translateY(-50%);
    width: 100px; height: 100px; border: 0; background: transparent; /* 재검수 p38 (20260819): 피그마 실측 100×100 (팝업 밖 여백) */
    display: flex; align-items: center; justify-content: center;
    cursor: pointer; font-size: 56px; line-height: 1; color: #fff;
    transition: opacity .15s ease;
}
.adp-popup-nav:hover { opacity: .7; }
.adp-popup-nav.prev { left: 24px; }
.adp-popup-nav.next { right: 24px; }
.ico-popup-left{width: 26px; height: 51px; background-image: url('../img/ico_left_big.svg');}
.ico-popup-right{width: 26px; height: 51px; background-image: url('../img/ico_right_big.svg');}

.adp-popup {
    position: relative; background: #fff; border-radius: 14px;
    width: 100%; max-width: 1400px; height: 800px;
    max-height: calc(100vh - 80px);
    overflow: hidden; display: flex; flex-direction: column;
}
.adp-popup-close {
    position: absolute; top: 24px; right: 24px; z-index: 5;
    width: 32px; height: 32px; border: 0; background: transparent;
    cursor: pointer; line-height: 1;
}
.ico-popup-close {
    width: 100%; height: 100%; background: url('../img/ico_popup_close.svg') no-repeat center/contain;
}

/* 스크롤 영역 (위 상세 → 아래 운영방식) */
.adp-popup-scroll { flex: 1; overflow: hidden; }

/* 헤더 (스티키, 플랫폼별 배경) */
.adp-pd-head {
    position: sticky;
    top: 0;
    z-index: 3;
    height: 180px;
    background: #03C75A;
    flex: none;
    display: flex;
    align-items: center;
    justify-content: center;
}
.adp-pd-head.theme-blog {background: #03C75A;align-items: flex-start;}
.adp-pd-head.theme-place { background: #00B894; }
.adp-pd-head.theme-store { background: #FFC400; }
.adp-pd-head.theme-insta {background: linear-gradient(90deg, #FEA30D 0%, #FE1B5C 30%, #D7029D 70%, #A706D7 100%);padding: 0;}
.adp-pd-head.theme-youtube { background: #FF0000; }
.adp-pd-head.theme-shorts{background: #FF2D55;}
.adp-pd-head.theme-cafe { background: #03C75A; }
.adp-pd-head.theme-review { background: #6C5CE7; }
.adp-pd-head.theme-press { background: #2567FC; }
.adp-pd-head.theme-event { background: #FF7A00; }
.adp-pd-head.theme-package { background: #009966; }
.adp-pd-head.theme-blog {padding-top: 80px;}

.adp-pd-brand {display: flex;gap: 40px;align-items: center;justify-content: center;}
.adp-pd-brand img {display: block;width: auto;}
.adp-pd-brand span{}
.adp-pd-brand .blog-logo { width: 121px; height: 40px; }
.adp-pd-brand .naver-logo { font-size: 34px; font-weight: 800; color: #fff; letter-spacing: -1.5px; line-height: 1; }
.adp-pd-brand .divider { width: 1px; height: 40px; background: #fff; }
.adp-pd-brand-text {font-family: 'paperlogy', sans-serif; display: flex; align-items: center; justify-content: center; color: #FFF; text-align: center; font-size: 50px; font-weight: 500; line-height: 145%; letter-spacing: -1.25px;}

/* 탭 (헤더 하단에 걸침) */
.adp-pd-tabs {
    position: absolute;
    left: 50%;
    bottom: -9px;
    transform: translate(-50%, 50%);
    display: flex;
    padding: 4px;
    border-radius: 100px;
    /* Glass 효과 */
    background: rgba(255,255,255,.18);
    backdrop-filter: blur(12px) saturate(150%);
    -webkit-backdrop-filter: blur(12px) saturate(150%);
    border: 1px solid rgba(255,255,255,.4);
    box-shadow: 0 8px 24px rgba(0,20,55,.18), inset 0 1px 0 rgba(255,255,255,.55);
    height: 52px;
}
.adp-pd-tabs button {
    min-width: 136px;
    padding: 11px 16px;
    border: 0;
    border-radius: 100px;
    background: transparent;
    font-size: 16px;
    color: var(--info);
    cursor: pointer;
    letter-spacing: -.4px;
    transition: background .2s, color .2s;
    display: flex;
    align-items: center;
    justify-content: center;
}
.adp-pd-tabs button.is-active {
    color: #111; font-weight: 500;
    background: rgba(255,255,255,.85);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    box-shadow: 0 2px 6px rgba(0,20,55,.15), inset 0 1px 0 rgba(255,255,255,.8);
}

/* 상품 화면 전환 (슬라이드) */
.adp-screen { display: none; }
.adp-screen.is-active {display: block;height: 100%;overflow: auto;display: flex;flex-direction: column;overflow: hidden;}

/* 상세 (좌 목업 / 우 텍스트) */
.adp-pd-detail {/* padding: 80px 0 0; */overflow: auto;}
.adp-popup:not(.has-tabs) .adp-pd-detail {}

/* 탭 패널 전환 */
.adp-pd-detail.adp-tab-panel { display: none; }
.adp-pd-detail.adp-tab-panel.is-active {
    display: block;
}
.adp-pd-wrap{display: flex;height: 100%;}
.adp-pd-visual {position: relative;flex: 1;display: flex;align-items: center;justify-content: center;}
.adp-pd-visual img {}
.adp-pd-visual .v-mo {display: none;}
.adp-screen[data-key="blog"] .v-pc {width: 613px;}
.adp-ops-card-head .img-wrap {
    position: absolute;
    right: 23px;
    top: 12px;
}

.adp-pd-visual .v-badge {
    position: absolute; left: 28px; bottom: 30px; z-index: 2;
    display: flex; flex-direction: column; align-items: flex-start; gap: 2px;
    background: #fff; border-radius: 12px; padding: 8px 12px;
    box-shadow: 0 8px 20px rgba(0,20,55,.16);
}
.adp-pd-visual .v-badge .tag { background: #04B438; color: #fff; font-size: 12px; font-weight: 500; letter-spacing: -.3px; border-radius: 999px; padding: 2px 10px; }
.adp-pd-visual .v-badge .num { display: flex; align-items: center; gap: 4px; }
.adp-pd-visual .v-badge .num img { width: 18px; height: 18px; }
.adp-pd-visual .v-badge .num strong { color: #04B438; font-size: 16px; font-weight: 600; letter-spacing: -.4px; }
.adp-pd-visual .v-badge .num span { color: #767676; font-size: 11px; letter-spacing: -.2px; }
.adp-pd-visual .v-hand { position: absolute; left: 300px; top: 200px; width: 40px; height: 40px; z-index: 2; }

/* 일반 목업 (블로그 외) */
.adp-pd-visual.is-generic { display: flex; align-items: center; justify-content: center; }
.adp-pd-visual.is-generic .v-card {
    width: 220px; height: 220px; border-radius: 24px; background: #fff;
    border: 1px solid #F1F1F5; box-shadow: 0 8px 20px rgba(0,20,55,.16);
    display: flex; align-items: center; justify-content: center;
}
.adp-pd-visual.is-generic .v-card img { width: 96px; height: 96px; object-fit: contain; }

/* N인플루언서 비주얼 (폰 3개 + 말풍선) */
.adp-pd-visual.is-infl {display: flex;align-items: center;justify-content: center;gap: 0;}
.adp-pd-visual.is-infl .infl-phone { position: relative; flex: 0 0 auto; }
.adp-pd-visual.is-infl .infl-phone img {display: block;height: 320px;width: auto;object-fit: contain;}
.adp-pd-visual.is-infl .infl-tip {
    position: absolute; top: 14px; left: 50%; transform: translateX(-50%);
    background: var(--tip); color: #fff; font-size: 13px; font-weight: 600; letter-spacing: -.3px;
    white-space: nowrap; padding: 6px 12px; border-radius: 999px; box-shadow: 0 4px 10px rgba(0,20,55,.2);
}
.adp-pd-visual.is-infl .infl-tip::after {
    content: ""; position: absolute; left: 50%; bottom: -5px; transform: translateX(-50%) rotate(45deg);
    width: 9px; height: 9px; background: var(--tip);
}

/* 상위노출 비주얼 (검색결과 폰) */
.adp-pd-visual.is-rank { display: flex; align-items: center; justify-content: center; }
.adp-screen[data-key="blog"] .adp-pd-visual.is-rank img {width: 402px;height: 100%;object-fit: contain;}



.adp-pd-info {display: flex;align-items: center;justify-content: flex-start;padding-left: 130px;width: 50%;}
.adp-info-wrap {max-width: 424px;} /* 재검수 p38 (20260819): 피그마 실측 — 우측 텍스트 칼럼 폭 424px */
.adp-pd-headline {font-size: 28px;color: var(--sub);letter-spacing: -.7px;line-height: 1.4;margin-bottom: 32px;}
.adp-pd-headline strong {
    font-weight: 600;
    color: #099D4B;
}
.adp-pd-headline.hl-grad strong {
    background: linear-gradient(90deg, #68D892 0%, #3BCED7 100%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.adp-pd-group { display: flex; flex-direction: column; gap: 16px; }
.adp-pd-group + .adp-pd-group{ margin-top: 24px; }
.adp-pd-group-title { display: flex; align-items: center; gap: 8px; font-size: 24px; font-weight: 500; color: #111; letter-spacing: -.6px; }
.adp-pd-group-title .ico-circle { flex-shrink: 0; width: 40px; height: 40px; border-radius: 50%; background: #E8F5E9; display: flex; align-items: center; justify-content: center; }
.adp-pd-group-title .ico-circle img { width: 26px; height: 26px; }
.adp-pd-list { display: flex; flex-direction: column; gap: 5px; padding-left: 48px; }
.adp-pd-list li { display: flex; align-items: center; gap: 6px; font-size: 18px; color: #505050; letter-spacing: -.45px; }
.adp-pd-list li::before { content: ""; flex-shrink: 0; width: 16px; height: 16px; background: url('../img/ico_chk_green.svg') no-repeat center/contain; }

/* 스크롤 유도 */
.scroll-text {/* background: #fff; */position: absolute;bottom: -21px;width: 100%;display: flex;flex-direction: column;gap: 32px;}
.adp-pd-detail.is-bottom .scroll-text { opacity: 0; visibility: hidden; }
.adp-pd-fold {display: flex;justify-content: center;}
.adp-pd-fold img { width: 40px; height: 40px; opacity: .7; animation: adpFold 1.6s ease-in-out infinite; }
@keyframes adpFold { 0%,100% { transform: translateY(0); } 50% { transform: translateY(6px); } }

/* 운영 방식 안내 (스크롤 시 노출) */
.adp-pd-ops {padding: 67px 64px 33px;}
.adp-ops-title {text-align: center;font-size: 28px;color: var(--sub);letter-spacing: -.7px;line-height: 1.4;}
.adp-ops-desc {text-align: center;margin-top: 4px; font-size: 16px; color: var(--sub);}
.adp-ops-row {display: flex;gap: 46px;justify-content: center;align-items: stretch;margin-top: 36px;}
.adp-ops-card {position: relative;flex: 0 0 420px;padding: 24px 24px 11px;display: flex;flex-direction: column;border-radius: 14px;border: 1px solid var(--regular);background: #F9FBF9;}
.adp-ops-card.is-pro {border: 2.5px solid #EF3739;background: #FEF5F5;box-shadow: 2px 4px 12px 0 rgba(240, 55, 58, 0.40);}
.adp-ops-card-head {display: flex;flex-direction: column;align-items: flex-start;gap: 4px;}
.adp-ops-card-head .name {font-size: 20px;font-weight: 500;color: var(--black);letter-spacing: -.5px;}
.adp-ops-card-head .sub {font-size: 14px;color: var(--sub);letter-spacing: -.325px;text-align: center;}
.adp-ops-card-head .badge { margin-bottom: 2px; }
.adp-ops-card.is-disabled{padding: 24px 40px 73px;border-radius: 14px;border: 1px solid var(--regular);background: #EAEAEA;gap: 24px;}
.adp-ops-card .adp-ops-tag{position: absolute;top: -13px;left: 14px;font-size: 12px;font-weight: 500;color: var(--white);background: #545461;padding: 4px 8px;border-radius: 14px;}
.adp-ops-card.is-disabled .adp-ops-plan{
    border-radius: 14px;
    background: #F5F5F7;
    box-shadow: 4px 4px 5px 0 rgba(0, 0, 0, 0.10) inset;
}
.adp-ops-card.is-disabled .adp-ops-plan{position: relative; min-height: 230px;}
.adp-ops-card.is-disabled .adp-ops-img{position: absolute; top: -43px; right: -10px;}
.adp-badge-wrap {display: flex; gap: 8px;}
.adp-ops-card.is-disabled .adp-ops-noBack{display: flex;align-items: center;justify-content: center;gap: 16px;height: 100%;}
.adp-ops-card.is-disabled .adp-ops-noBack p {color: var(--sub); font-size: 14px;}


.adp-ops-badge {display: inline-flex;align-items: center;justify-content: center;height: 20px;padding: 0 16px;font-size: 12px;font-weight: 500; /* 17.4px */letter-spacing: -0.3px; color: var(--white);border-radius: 2px;}
.adp-ops-badge.free {background: #04AC4C;}
.adp-ops-badge.free.gray {background: #A5A5AF;}
.adp-ops-badge.plus { background: #1C94EB;}
.adp-ops-badge.pro { background: var(--main); }

.adp-ops-plans {display: flex;gap: 20px;margin-top: 8px;}
.adp-ops-plan {flex: 1;display: flex;padding: 10px 8px;flex-direction: column;align-items: center;gap: 13px;flex: 1 0 0;align-self: stretch;border-radius: 14px;background: #FFF;}
.adp-ops-plan .price {font-size: 16px;font-weight: 500;color: var(--black);letter-spacing: -.6px;line-height: 1.4;}
.adp-ops-plan .price .unit {font-size: 8px;font-weight: 400;color: var(--info);margin-left: 2px;letter-spacing: -.3px;}
.adp-ops-plan .price-note { font-size: 11px; color: #767676; letter-spacing: -.275px; margin-top: -8px; }
.adp-ops-feat {display: flex;flex-direction: column;gap: 8px;width: 100%;}
.adp-ops-feat li {display: flex;align-items: center;gap: 8px;font-size: 12px;color: var(--sub);letter-spacing: -.325px;line-height: 1.45;padding: 3.5px 0;}
.adp-ops-feat li:not(:last-child) { border-bottom: 1px solid var(--regular); }
.adp-ops-feat .feat-icon {
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    background: #F9FBF9;
}
.adp-side-text{font-size: 11px; color: var(--info);}

/* 셀프 운영 - 지원하지 않는 채널(FREE 잠금) */
.adp-ops-plan.is-locked { justify-content: flex-start; }
.adp-ops-lock {gap: 8px;display: flex;flex-direction: column;align-items: center;}
.adp-ops-lock .lock-ico { display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; border-radius: 10px; background: #E9E9E9; }
.adp-ops-lock .lock-ico img {object-fit: contain;}
.adp-ops-lock .lock-text { font-size: 12px; color: var(--sub); letter-spacing: -.3px; text-align: center; }
.adp-ops-locknote { width: 100%; padding: 8px; border-radius: 14px; background: #F1F1F1; text-align: center; font-size: 12px; color: var(--info); line-height: 1.45; letter-spacing: -.3px; }
.adp-ops-locknote strong { color: #1C94EB; font-weight: 500; }

.adp-ops-prolist { display: flex; flex-direction: column; gap: 10px; flex: 1; }
.adp-ops-prolist li { display: flex; align-items: center; gap: 6px; font-size: 15px; color: #505050; letter-spacing: -.375px; }
.adp-ops-prolist li::before { content: ""; flex-shrink: 0; width: 16px; height: 16px; background: url('../img/ico_chk_green.svg') no-repeat center/contain; }

.adp-ops-btn {display: flex;align-items: center;justify-content: center;gap: 4px;width: 100%;height: 40px;border: 0;border-radius: 10px;font-size: 14px;font-weight: 500;letter-spacing: -.4px;cursor: pointer;margin-top: 21px;}
.adp-ops-btn.secondary {border: 1px solid #04AC4C;background: #FFF;color: #04AC4C;}
.adp-ops-btn .ico-arrow-right{filter: brightness(0) saturate(100%) invert(55%) sepia(79%) saturate(4955%) hue-rotate(122deg) brightness(96%) contrast(97%);width: 16px;height: 16px;}
.adp-ops-btn.danger { background: var(--main-80); color: var(--white); }
.adp-ops-btn.danger .ico-arrow-right {filter: var(--filter-white);}
.adp-ops-btn:hover { filter: brightness(.97); }
.adp-ops-note {margin-top: 15px;margin-left: 16px;font-size: 11px;color: var(--info);letter-spacing: -.4px;line-height: 1.4;display: flex;align-items: flex-start;gap: 4px;}
.adp-ops-note .ico {width: 12px; height: 12px; margin-top: 1px;}
.is-pro .adp-ops-note{font-size: 12px;}



/* PRO 메달 */
.adp-ops-medal {position: absolute;top: -40px;right: 0;}
.is-pro .adp-ops-card-head .img-wrap { top: 15px; right: 29px; } 
.is-pro .adp-ops-feat .feat-icon { width: 36px; height: 36px; background: #FFEBEB; } 
.is-pro .adp-ops-plan { padding: 16px; } 
.is-pro .adp-ops-feat li { gap: 16px; font-size: 14px; } 
.is-pro .adp-ops-plans { margin-top: 16px; } 

.adp-screen[data-key="insta"] .adp-pd-visual img {max-width: 538px; width: 100%;}
.adp-screen[data-key="insta"] .adp-pd-headline.hl-grad strong{background: linear-gradient(90deg, #FEA30D 0%, #FE1B5C 30%, #D7029D 70%, #A706D7 100%);background-clip: text;-webkit-background-clip: text;}
.adp-screen[data-key="insta"] .adp-pd-group-title .ico-circle{background:#FFE2F2;}
.adp-screen[data-key="insta"] .adp-pd-group-title .ico-circle img{filter: brightness(0) saturate(100%) invert(30%) sepia(53%) saturate(4686%) hue-rotate(332deg) brightness(102%) contrast(101%);}
.adp-screen[data-key="insta"] .adp-pd-list li::before{filter: brightness(0) saturate(100%) invert(31%) sepia(98%) saturate(3157%) hue-rotate(331deg) brightness(100%) contrast(103%);}
.adp-screen[data-key="review"] .adp-pd-headline strong{color: #6C5CE7;}
.adp-screen[data-key="review"] .adp-pd-group-title .ico-circle{background: #EBE9FF;}
.adp-screen[data-key="review"] .adp-pd-group-title .ico-circle img{filter: brightness(0) saturate(100%) invert(37%) sepia(44%) saturate(1956%) hue-rotate(223deg) brightness(93%) contrast(94%);}
.adp-screen[data-key="review"] .adp-pd-list li::before{filter: brightness(0) saturate(100%) invert(37%) sepia(44%) saturate(1956%) hue-rotate(223deg) brightness(93%) contrast(94%);}
.adp-screen[data-key="youtube"] .adp-pd-visual img{max-width: 538px; width: 100%;}
.adp-screen[data-key="youtube"] .adp-pd-headline strong{color: #FF0000;}
.adp-screen[data-key="youtube"] .adp-pd-group-title .ico-circle{background: var(--system-red-500);}
.adp-screen[data-key="youtube"] .adp-pd-group-title .ico-circle img{filter: brightness(0) saturate(100%) invert(24%) sepia(93%) saturate(7347%) hue-rotate(2deg) brightness(103%) contrast(123%);}
.adp-screen[data-key="youtube"] .adp-pd-list li::before{filter: brightness(0) saturate(100%) invert(24%) sepia(93%) saturate(7347%) hue-rotate(2deg) brightness(103%) contrast(123%);}
.adp-screen[data-key="shorts"] .adp-pd-visual img{max-width: 533px; width: 100%;}
.adp-screen[data-key="shorts"] .adp-pd-headline strong{color: #FF2D55;}
.adp-screen[data-key="shorts"] .adp-pd-group-title .ico-circle{background: #FCE4EC}
.adp-screen[data-key="shorts"] .adp-pd-group-title .ico-circle img{filter: brightness(0) saturate(100%) invert(36%) sepia(96%) saturate(4360%) hue-rotate(332deg) brightness(101%) contrast(101%);}
.adp-screen[data-key="shorts"] .adp-pd-list li::before{filter: brightness(0) saturate(100%) invert(36%) sepia(96%) saturate(4360%) hue-rotate(332deg) brightness(101%) contrast(101%);}
.adp-screen[data-key="press"] .adp-pd-headline strong{color: #2567FC;}
.adp-screen[data-key="press"] .adp-pd-group-title .ico-circle{background: #E3F2FD}
.adp-screen[data-key="press"] .adp-pd-group-title .ico-circle img{filter: brightness(0) saturate(100%) invert(34%) sepia(77%) saturate(2911%) hue-rotate(213deg) brightness(95%) contrast(109%);}
.adp-screen[data-key="press"] .adp-pd-list li::before{filter: brightness(0) saturate(100%) invert(34%) sepia(77%) saturate(2911%) hue-rotate(213deg) brightness(95%) contrast(109%);}
.adp-screen[data-key="cafe"] .adp-pd-visual img {max-width: 588px; width: 100%;}
.adp-screen[data-key="store"] .adp-pd-visual img {max-width: 613px; width: 100%;}
.adp-screen[data-key="store"] .adp-pd-headline strong {color: #FFC400;}
.adp-screen[data-key="store"] .adp-pd-group-title .ico-circle { background: #FFFDE7; }
.adp-screen[data-key="store"] .adp-pd-group-title .ico-circle img {filter: brightness(0) saturate(100%) invert(74%) sepia(83%) saturate(1650%) hue-rotate(359deg) brightness(102%) contrast(106%);}
.adp-screen[data-key="store"] .adp-pd-list li::before{filter: brightness(0) saturate(100%) invert(74%) sepia(83%) saturate(1650%) hue-rotate(359deg) brightness(102%) contrast(106%);}
.adp-screen[data-key="place"] .adp-pd-visual img {max-width: 613px; width: 100%;}
.adp-screen[data-key="place"] .adp-pd-headline strong {color: #00B894;}
.adp-screen[data-key="place"] .adp-pd-group-title .ico-circle { background: #E0F2F1; }
.adp-screen[data-key="place"] .adp-pd-group-title .ico-circle img {filter: brightness(0) saturate(100%) invert(62%) sepia(56%) saturate(5236%) hue-rotate(134deg) brightness(96%) contrast(101%);}
.adp-screen[data-key="place"] .adp-pd-list li::before{filter: brightness(0) saturate(100%) invert(62%) sepia(56%) saturate(5236%) hue-rotate(134deg) brightness(96%) contrast(101%);}
.adp-screen[data-key="event"] .adp-pd-visual img {max-width: 630px; width: 100%;}
.adp-screen[data-key="event"] .adp-pd-headline strong {color: #FF7A00;}
.adp-screen[data-key="event"] .adp-pd-group-title .ico-circle { background: #FFF3E0; }
.adp-screen[data-key="event"] .adp-pd-group-title .ico-circle img {filter: brightness(0) saturate(100%) invert(62%) sepia(45%) saturate(6999%) hue-rotate(2deg) brightness(107%) contrast(103%);}
.adp-screen[data-key="event"] .adp-pd-list li::before{filter: brightness(0) saturate(100%) invert(62%) sepia(45%) saturate(6999%) hue-rotate(2deg) brightness(107%) contrast(103%);}




@media (max-width: 768px) {
    .scroll-text{position: static;opacity: 1 !important;visibility: visible !important;margin: 32px 0 16px;}
    .scroll-text .adp-ops-title{display: none !important;}
    .adp-pd-fold img {
        width: 32px;
        height: 32px;
    }
    /* ===== 모바일: 상세 팝업 (블로그 기준) ===== */
    /* 헤더 */
    .adp-popup-close {
        top: 16px;
        right: 16px;
        width: 24px;
        height: 24px;
    }
    .adp-pd-head {height: 100px;padding-top: 48px;align-items: flex-start;}
    .adp-pd-head.theme-blog {padding-top: 48px;}
    .adp-pd-brand {gap: 24px;}
    .adp-pd-brand .naver-logo img { width: 84px; height: auto; }
    .adp-pd-brand .blog-logo {width: 72px;height: auto;}
    .adp-pd-brand .divider {height: 24px;}
    .adp-pd-brand-text {font-size: 24px;letter-spacing: -.65px;}
    /* 탭: 전체폭으로 한 줄 배치 */
    .adp-pd-tabs { left: 16px; right: 16px; transform: translateY(50%); width: auto; height: 40px; padding: 3px; bottom: -12px; }

    /* 비주얼 + 정보 세로 정렬 */
    .adp-pd-wrap { flex-direction: column; height: auto; gap: 20px; }
    .adp-pd-visual { width: 100%; flex: none; }
    .adp-pd-visual .img-wrap{margin: 0 -16px;}
    .adp-pd-visual .v-pc { display: none; }
    .adp-pd-visual .v-mo { display: block; width: 100%; max-width: 360px; margin: 0 auto; }
    .adp-pd-info { width: 100%; padding-left: 0; }
    .adp-info-wrap { width: 100%; max-width: none; } /* p38 데스크톱 424px 캡의 모바일 원복 */
    .adp-pd-group {gap: 8px; padding-left: 8px;}

    /* 텍스트 */
    .adp-pd-headline {font-size: 16px;margin-bottom: 16px;text-align: center;}
    .adp-pd-group + .adp-pd-group {margin-top: 16px;}
    .adp-pd-group-title {font-size: 14px;}
    .adp-pd-group-title .ico-circle {
    display: none;
}
    .adp-pd-group-title .ico-circle img { width: 20px; height: 20px; }
    .adp-pd-list {padding-left: 0;}

    /* 운영 방식 안내 */
    .adp-ops-title {font-size: 16px;}
    .adp-ops-desc {font-size: 14px; margin-top: 16px;}
    .adp-ops-card {width: 100%;padding: 24px 15px 16px;}
    .adp-ops-card-head {}
    .adp-ops-card-head .name {font-size: 16px;}
    .adp-ops-card-head .img-wrap {width: 92px;ri;right: 11px;top: 18px;}
    .adp-ops-card-head .img-wrap img { width: 100%; height: auto; }
    .is-pro .adp-ops-card-head .img-wrap { width: 86px; top: 49px; right: -7px; } 
    .adp-ops-card.is-pro {padding: 16px 24px;}
    .is-pro .adp-ops-plan {padding: 20px 16px;}
    .adp-ops-badge.pro {margin-bottom: 12px;}
    .is-pro .adp-ops-card-head .sub {font-size: 12px;}
    .is-pro .adp-ops-feat li{font-size: 12px;}
    .adp-ops-plan .price { display: flex; flex-direction: column; align-items: end; } 
    .adp-ops-card-head .sub { font-size: 12px; } 
    .adp-ops-medal { width: 44px; } 
    .adp-ops-plans {g;gap: 8px;argin-top: 14px;}
    .adp-ops-plan {padding: 16px 8px;gap: 9px;}
    .adp-ops-feat li {gap: 4px;word-break: keep-all;}
    .adp-ops-feat .feat-icon { width: 24px; height: 24px; border-radius: 8px; } 
    .adp-ops-card:not(.is-pro) .adp-ops-feat .feat-icon img { width: 16px; height: 16px; } 
    .adp-ops-plan .price { display: flex; flex-direction: column; align-items: end; } 
    .adp-popup-overlay { padding: 16px; }
    .adp-popup-nav { display: none; }
    .adp-popup { height: 100%; }
    .adp-pd-detail { flex-direction: column; gap: 24px; padding: 48px 16px 32px;}
    .adp-pd-list li {font-size: 13px;}
    .adp-pd-ops { padding: 0;}
    .adp-ops-row {flex-direction: column;align-items: stretch;margin-top: 32px;gap: 40px;}
    .adp-ops-card { flex: none; }
    .adp-pd-tabs button { flex: 1; min-width: 0; padding: 0; font-size: 14px; white-space: nowrap; }
    .adp-ops-btn{margin-top: 16px;}
    .adp-ops-card .adp-ops-tag { top: -16px; } 
    .adp-ops-card.is-disabled { padding: 16px 24px 79px; gap: 16px; } 
    .adp-ops-card.is-disabled .adp-ops-img { width: 69px; top: -63px; right: -15px; } 
    .adp-ops-card.is-disabled .adp-ops-noBack { gap: 8px; } 
    .adp-ops-card.is-disabled .adp-ops-noBack img { width: 24px; height: 24px; } 
    .adp-ops-card.is-disabled .adp-ops-noBack p { font-size: 12px; } 
    .adp-pd-head.theme-insta { padding-top: 48px; } 
    .adp-pd-head.theme-insta img { width: 111px; } 
    .adp-pd-head.theme-youtube img{width: 106px;}

    .tracking-upload-box {
        flex-direction: column;
        background: transparent;
        border: 0;
        height: auto;
        align-items: flex-end;
        padding: 0;
    }

    .tracking-upload-file {
        border: 1px solid var(--line-gray);
        height: 48px;
        max-width: 504px;
        width: 100%;
        background: #F7F7FB;
        padding: 10px 8px;
        border-radius: 4px;
    }

    .tracking-upload-helper {
        text-align: left;
        margin-top: 0;
    }

}

/* ===== 캠페인 정보(상세) 모바일 보정 — Figma 260408 참고 ===== */
@media (max-width: 768px) {
    /* 페이지 타이틀: 제목 숨기고 목록 버튼만 우측 정렬 */
    .contents-bbs:has(.detail-wrap) .page-title_wrap.type2 { display: flex; justify-content: flex-end; align-items: center; margin-bottom: 12px; } 
    .contents-bbs:has(.detail-wrap) .page-title_wrap.type2 .page-title { display: none; } 
    .contents-bbs:has(.detail-wrap) .page-title_wrap.type2 form,
    .contents-bbs:has(.detail-wrap) .page-title_wrap.type2 .search-form,
    .contents-bbs:has(.detail-wrap) .page-title_wrap.type2 .search-item { display: flex; justify-content: flex-end; width: auto; } 
    .contents-bbs:has(.detail-wrap) .page-title_wrap.type2 .list-btn { background: #fff; border: 1px solid #E5E5EC; border-radius: 8px; padding: 8px 16px; font-size: 13px; color: #505050; letter-spacing: -0.325px; display: inline-flex; align-items: center; gap: 4px; cursor: pointer; } 

    /* 제품명 카드 */
    .detail-wrap .detail-product-card.card-item { padding: 16px; ga; gap: 9px; } 
    .detail-wrap .detail-product-card .detail-thumb { width: 64px; height: 64px; border-radius: 10px; overflow: hidden; flex-shrink: 0; } 
    .detail-wrap .detail-product-card .detail-thumb img { width: 100%; height: 100%; object-fit: cover; } 
    .detail-wrap .detail-product-card .detail-meta .detail-title { font-size: 15px; font-weight: 500; color: #111; letter-spacing: -0.375px; line-height: 1.4; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; } 
    .detail-wrap .detail-product-card .detail-meta .detail-desc { margin-top: 4px; font-size: 12px; color: #767676; letter-spacing: -0.3px; line-height: 1.4; } 

    /* 캠페인 현황: 값 우측 정렬 */
    .detail-wrap .detail-status-card.card-item { padding: 16px; } 
    .detail-wrap .detail-status-card .detail-info-label { font-size: 14px; font-weight: 500; color: #111; margin-bottom: 12px; } 
    .detail-wrap .detail-info-list li { display: flex; justify-content: space-between; align-items: center; gap: 8px; font-size: 13px; } 
    .detail-wrap .detail-info-list li + li { margin-top: 8px; } 
    .detail-wrap .detail-info-list .label { color: #767676; font-weight: 400; min-width: 0; flex: 1; font-size: 13px; } 
    .detail-wrap .detail-info-list .value { color: #111; font-weight: 600; font-size: 14px; text-align: right; } 

    /* 탭 액션 버튼 */
    .detail-tab-wrap .detail-tab-btns { display: flex; justify-content: flex-end; gap: 8px; } 
    .detail-tab-wrap .detail-tab-btns .btn-comm { height: 36px; padding: 0 16px; font-size: 13px; border-radius: 8px; } 

    /* 진행중 탭 - 콘텐츠 카드 리스트 */
    .detail-tab-content .campaign-table tbody tr { display: flex; flex-wrap: wrap; align-items: center; grid-template-areas: none; padding: 16px; background: #fff; border: 1px solid #F1F1F5; border-radius: 12px; margin-bottom: 12px; box-shadow: none; }
    .detail-tab-content .campaign-table tbody td { display: block; width: 100%; padding: 0; border: 0; font-size: 13px; color: #111; line-height: 1.45; }
    .detail-tab-content .campaign-table tbody td::before { content: none; }
    .detail-tab-content .campaign-table tbody tr:hover { border-color: var(--main); }
    .detail-tab-content .campaign-table tbody tr:hover td[data-label="콘텐츠"] .btn-detail { background: var(--main-80); color: var(--white); border-color: var(--main-80); }

    /* 번호 + 닉네임 한 줄 묶음 */
    .detail-tab-content .campaign-table tbody td[data-label="번호"],
    .detail-tab-content .campaign-table tbody td[data-label="닉네임"] { display: inline-flex; width: auto; vertical-align: middle; order: 1; }
    .detail-tab-content .campaign-table tbody td[data-label="번호"] { align-items: center; justify-content: center; background: #2A2A37; color: #fff; padding: 2px 12px; border-radius: 999px; font-size: 12px; font-weight: 600; letter-spacing: -0.3px; margin-right: 8px; }
    .detail-tab-content .campaign-table tbody td[data-label="닉네임"] { font-size: 14px; font-weight: 500; color: #111; letter-spacing: -0.35px; align-items: center; padding: 0; }
    /* 콘텐츠 제목 → 1행 잘림 */
    .detail-tab-content .campaign-table tbody td.col-title,
    .detail-tab-content .campaign-table tbody td[data-label="콘텐츠 제목"] { order: 2; margin-top: 8px; font-size: 14px; color: #505050; letter-spacing: -0.35px; line-height: 1.45; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
    .detail-tab-content .campaign-table tbody td.col-title a { color: inherit; text-decoration: none; }
    /* 디바이더 + 등록여부 / 관리 (한 줄, 좌우 배치) */
    .detail-tab-content .campaign-table tbody td[data-label="등록여부"] { order: 3; width: auto; flex: 1 1 auto; margin-top: 12px; padding-top: 12px; border-top: 1px solid #F1F1F5; text-align: left; }
    .detail-tab-content .campaign-table tbody td[data-label="등록여부"] .status-badge { font-size: 12px; color: #767676; background: transparent; padding: 0; }
    .detail-tab-content .campaign-table tbody td[data-label="등록여부"] .status-badge.complete { color: #767676; }
    .detail-tab-content .campaign-table tbody td[data-label="관리"] { order: 3; width: auto; flex: 0 0 auto; margin-top: 12px; padding-top: 12px; border-top: 1px solid #F1F1F5; text-align: right; }
    .detail-tab-content .campaign-table tbody td[data-label="관리"] .row-manage-menu { right: 0; left: auto; }
    /* 리뷰보기 버튼 - 전체 너비 outlined */
    .detail-tab-content .campaign-table tbody td[data-label="콘텐츠"] { order: 4; margin-top: 12px; }
    .detail-tab-content .campaign-table tbody td[data-label="콘텐츠"] .btn-detail { display: block; width: 100%; padding: 8px 0; background: #fff; border: 1px solid #E5E5EC; border-radius: 8px; font-size: 13px; color: #505050; letter-spacing: -0.325px; text-align: center; text-decoration: none; }
}
@media (max-width: 768px) {
    

    /* 검색 input */
    .tab-content_box .search-form { margin-top: 0; width: 100%; }
    .tab-content_box .search-form .search-item { width: 100%; }
    .tab-content_box .search-form .wrap-input.inner {
        min-width: 0 ; width: 100%;
        height: 40px; border-radius: 8px; padding: 0 12px;
        background: #F1F1F5; border: 0;
    }
    .tab-content_box .search-form .search-input {
        font-size: 13px; height: 100%; width: 100%;
    }

    
}

@media (max-width: 768px) {
    /* 보고서 다운로드 버튼: 우측 정렬 콤팩트 */
    .detail-tab-content .select-tab-actions {display: flex;justify-content: flex-end;gap: 16px;} 
    .detail-tab-content .select-tab-actions .btn-comm {width: auto;border-radius: 8px;display: inline-flex;align-items: center;padding: 8px 24px;height: 36px;gap: 4px;width: auto !important;} 
    .row-item.select-list-top {gap: 16px;}
    .detail-tab-content .select-tab-actions .btn-comm i { width: 16px; height: 16px; margin: 0; } 
    .select-notice-card ~ .select-tab-actions {
        justify-content: flex-start;
    }
    .select-notice-card ~ .select-tab-actions .btn-comm {
        width: 184px !important;
        padding: 0 20px;
        height: 48px;
    }
    .tracking-upload-modal.modal-overlay {align-items: flex-end;width: 100%;}
x
    .tracking-upload-modal.modal-overlay .modal-wrap {
        width: 100%;
        max-width: 100%;
    }

    /* 5개 통계 카드: 2열 그리드 (모바일 컴팩트) */
    .report-stat-grid.row-1-1 { display: grid; grid-template-columns: 1fr 1fr; gap: 16px 8px; margin: 0 0 24px; } 
    .report-stat-grid.row-1-1 .row-item { width: auto; flex: none; } 
    .report-stat-grid.row-1-1 .detail-stat-card.card-item { padding: 16px; height: auto; border: 1px solid #E5E5EC; box-shadow: none; } 
    .report-stat-grid.row-1-1 .stat-label { font-size: 14px; margin-bottom: 24px; } 
    .report-stat-grid.row-1-1 .stat-value strong { font-size: 18px; font-weight: 700; color: #111; } 
    .report-stat-grid.row-1-1 .stat-desc { display: none; } 
    .report-stat-grid.row-1-1 .detail-stat-card .ico { right: 16px; top: auto; bottom: 16px; width: 30px; height: 30px; } 

    /* 차트 + 키워드 카드: 세로 스택 */
    .report-chart-row { display: flex; flex-direction: column-reverse; gap: 24px; } 
    .report-keyword-card.card-item { padding: 16px; height: auto; border-radius: 12px; } 
    .report-keyword-card .keyword-title { font-size: 16px; margin-bottom: 16px; } 
    .report-keyword-card .region-list { padding-top: 0; } 
    .report-keyword-card .region-list li { display: flex; justify-content: space-between; align-items: center; padding: 8px 4px; border-bottom: 1px dashed #E5E5EC; } 
    .report-keyword-card .region-list .region { font-size: 12px; } 
    .report-keyword-card .region-list .percent { font-size: 13px; } 
    .report-keyword-card .keyword-summary { margin-top: 12px; font-size: 12px; } 

    .report-chart-card.card-item { padding: 16px; height: 280px; border-radius: 12px; } 
    .report-chart-header { flex-direction: column; align-items: stretch; gap: 8px; margin-bottom: 24px; } 
    .report-chart-title { font-size: 14px; } 
    .report-chart-tabs { flex-wrap: wrap; gap: 4px; } 
    .report-chart-tab { width: auto; padding: 0 12px; font-size: 11px; height: 26px; } 
    .report-chart-canvas-wrap { height: calc(100% - 80px); } 

    /* 캠페인 참여 콘텐츠 카드 - 테이블을 카드 리스트로 변환 */
    .report-content-card.card-item { padding: 16px; border-radius: 12px; } 
    .report-content-card .card-title { font-size: 18px; ma; margin-bottom: 16px; } 
    .report-popular-btn { position: static; margin-bottom: 16px; font-size: 12px; padding: 8px 12px; } 

    /* report-table: 카드 리스트 */
    .report-table,
    .report-table tbody { display: block; } 
    .report-table thead { display: none; } 
    .report-table colgroup { display: none; } 
    .report-table tbody tr {gap: 16px 4px;padding: 16px;padding-bottom: 60px;border: 1px solid #F1F1F5;border-radius: 10px;margin-bottom: 12px;background: #fff;position: relative;display: flex;flex-wrap: wrap;}
    .report-table tbody tr:hover:not(.is-disabled) { background: #fff; } 
    .report-table tbody td { display: block; padding: 0; border: 0; height: auto; text-align: left; font-size: 13px; line-height: 1.4; } 
    .report-table.bbs-table tbody td.col-num { grid-area: num; display: inline-flex; align-items: center; justify-content: center; align-self: center; justify-self: start; width: auto; background: #2A2A37; color: #fff; border-radius: 999px; font-size: 14px; font-weight: 600; min-width: 58px; height: 24px; padding: 2px 4px; order: 1; } 
    .report-table.bbs-table tbody td.col-nickname { grid-area: nick; align-self: center; font-size: 13px; color: #111; font-weight: 500; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; flex: 1; padding-top: 0; order: 2; } 
    .report-table.bbs-table tbody td.col-title { grid-area: title; font-size: 14px; font-weight: 500; line-height: 1.45; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; padding: 0; order: 3; } 
    .report-table tbody td.col-title p { margin: 0; } 
    .report-table.bbs-table tbody td.col-date {margin-right: 8px; grid-area: date;font-size: 12px;color: #767676;display: inline-flex;order: 4;align-items: center;width: auto;} 
    .report-table tbody td.col-like {margin-right: 8px;grid-area: likes;font-size: 12px;color: #767676;align-self: center;order: 6;display: inline-flex;width: auto;} 
    .report-table tbody td.col-like::before {content: "";min-width: auto;width: 16px;height: 16px;background: url("../img/ico_heart.svg") no-repeat 50% / cover;margin-right: 4px;} 
    .report-table tbody td.col-comment {grid-area: comments;font-size: 12px;color: #767676;align-self: center;justify-self: end;order: 5;width: auto;display: inline-flex;} 
    .report-table tbody td.col-comment::before {content: "";min-width: auto;width: 16px;height: 16px;background: url(../img/ico_message.svg) no-repeat 50% / cover;margin-right: 4px;} 
    .report-table tbody td.col-content {grid-area: review;order: 7;width: 104px;margin: 0 auto;position: absolute;bottom: 16px;left: calc(50% - 52px - 8px);transform: translateX(-50%);} 
    .report-table tbody td.col-content .btn-detail {display: block;width: 100%;padding: 4px 20px;background: var(--main-80);color: #fff;border: 0;border-radius: 999px;font-size: 14px;font-weight: 500;text-align: center;cursor: pointer;} 
    .report-table tbody td.col-auth1 {grid-area: proof1;order: 3;width: 64px;/* width: 50%; */} 
    .report-table tbody td.col-auth2 {grid-area: proof2;order: 3;margin-left: 4px;width: 64px;/* width: calc(50% - 10px); */} 
    .report-table tbody td.col-auth1 .campaign-thumb,
    .report-table tbody td.col-auth2 .campaign-thumb { } 
    .report-table tbody td.col-auth1 .campaign-thumb img,
    .report-table tbody td.col-auth2 .campaign-thumb img { width: 100%; height: 100%; object-fit: cover; } 
    .report-table tbody td.col-rate {grid-area: rate;order: 8;width: 104px;margin: 0 auto;position: absolute;bottom: 16px;left: calc(50% + 52px + 8px);transform: translateX(-50%);} 
    .report-table tbody td.col-rate .report-rate-btn {gap: 4px;display: flex;padding: 4px 16px;justify-content: center;align-items: center;border-radius: 999px;border: 1px solid var(--Button_Select_Input-Line_Gray, #E5E5EC);background: #FFF;width: 100%;} 
    .report-table tbody td.col-rate .report-rate-btn i{display: none;}
    .report-table tbody tr.is-disabled {padding: 12px 16px; } 
    .report-table tbody tr.is-disabled td:nth-child(n+4) { display: none; } 

    /* 리뷰 전체보기 버튼 */
    .report-more-btn { width: 100%; margin: 16px 0 0; height: 40px; font-size: 13px; } 
    .bbs-table.report-table tbody tr:first-child td { padding-top: 0; } 
    .report-table tbody td[class *= col-auth]::before { display: block; width: 100%; text-align: center; margin: 0; margin-bottom: 4px; color: var(--sub); text-align: center; font-size: 12px; font-weight: 400; letter-spacing: -0.3px; } 
    .report-table tbody td.col-auth1::before { content: '인증1'; }
    .report-table tbody td.col-auth2::before { content: '인증2'; } 
    .report-table.bbs-table tbody td.col-date::before {content: '';width: 16px;height: 16px;background: url("../img/ico_calendar2.svg") no-repeat 50% / cover;display: inline-flex;align-items: center;justify-content: center;min-width: auto;margin-right: 4px;} 
    .report-table tbody td.col-line {order: 4;width: 100%;height: 1px;background: url("../img/ico_line.svg") repeat;display: block;}
}

/* ===== 캠페인 가이드 수정(블로그) 모바일 보정 — Figma 260408 참고 ===== */
@media (max-width: 1024px){
     .cregist-layout {
        display: flex;
        flex-direction: column;
    }
    .cregist-aside{width: 100%;}
}
@media (max-width: 768px) {
    /* 레이아웃: 메인 + 사이드바를 세로 스택 */
    /* 메인 카드 */
    .cregist-main { width: 100%; padding: 0; gap: 16px; border-radius: 12px; background: transparent; box-shadow: none; } 
    .cregist-main .form-section { flex-direction: column; gap: 12px; padding: 16px 0; } 
    .cregist-main .form-section__head { min-width: 0; } 
    .cregist-main .form-section__title { font-size: 16px; } 

    /* 수정 안내 배너 */
    .combo-notice.warning { background: #FFF8E1; border-radius: 10px; padding: 12px 14px; } 
    .combo-notice.warning .combo-notice__hd { display: flex; align-items: flex-start; gap: 8px; font-size: 12px; color: #6B5A00; letter-spacing: -0.3px; line-height: 1.5; } 

    /* 가이드 정보 form-grid */
    .cregist-main .form-grid { gap: 16px; } 
    .cregist-main .form-grid.gap-40 { gap: 12px; } 
    .cregist-main .form-field { } 
    .cregist-main .form-label { font-size: 14px; font-weight: 500; color: #111; display: flex; align-items: center; gap: 4px; } 
    .cregist-main .form-label .required { color: #EF3739; } 
    .form-label + .form-helper {/* font-size: 12px; *//* color: #767676; *//* letter-spacing: -0.3px; *//* line-height: 1.5; */margin-top: 0;} 

    /* 미션 옵션 카드: 라벨 위, 버튼 아래 (세로 스택) */
    .cmission-option-row { max-width: 100%; } 
    .cmission-row-wrap { flex-direction: column; align-items: stretch; gap: 16px; } 
    .cmission-option-left { align-items: center; } 
    .cmission-option-txt__main { font-size: 13px; } 
    .cmission-option-txt__sub { font-size: 12px; margin-top: 4px; } 

    /* 작은 버튼 그룹: 가로 균등 분할 */
    .cmission-small-btns { display: grid; grid-template-columns: repeat(2, 1fr); gap: 8px; width: 100%; } 
    /* 2개 버튼 그룹 (포함/미포함) */
    .cmission-small-btns#mapBtns,
    .cmission-small-btns#linkBtns { grid-template-columns: 1fr 1fr; } 
    /* 3개 버튼 그룹 (영상 포함) */
    .cmission-small-btns#videoBtns { grid-template-columns: 1fr 1fr; grid-template-rows: 1fr 1fr; } 
    .cmission-small-btn { min-width: 0; width: 100%; border-radius: 10px; } 

    /* 추가 입력창 (직접입력 등) */
    .cmission-input-extra { justify-content: stretch; padding-left: 0; } 
    .cmission-input-extra .wrap-input { width: 100%; } 
    .cmission-input-extra .wrap-input .form-control { width: 100%; } 
    .cmission-input-extra.full { padding-left: 0; } 

    /* 키워드 태그 입력 */
    .wrap-input--keyword { width: 100%; min-height: 44px; padding: 8px 12px; border-radius: 8px; } 
    .ckeyword-preview { gap: 4px; } 
    .ckeyword-tag { font-size: 14px; } 
    .ckeyword-sep { display: none; } 

    /* 추가 요청사항 textarea */
    .cregist-main .inquiry-textarea { position: relative; width: 100%; border-radius: 8px; } 
    .cregist-main .form-control--textarea { width: 100%; min-height: 120px; padding: 12px; font-size: 13px; border-radius: 8px; } 
    .cregist-main .inquiry-count { position: absolute; right: 12px; bottom: 12px; font-size: 11px; color: #767676; } 

    /* ss-actions(이전 버튼): 풀너비 좌측 */
    .cregist-main .ss-actions { margin-top: 0; position: absolute; bottom: -70px; } 
    .cregist-main .ss-actions__buttons { display: flex; gap: 8px; justify-content: space-between; } 
    .cregist-main .ss-actions__buttons .btn-comm { flex: none; height: 48px; font-size: 14px; border-radius: 10px; border-radius: 10px; border: 1px solid var(--regular); background: var(--white); font-size: 15px; } 

    /* 사이드바: 미리보기 카드는 숨기고, 제출 버튼만 노출 */
    .cregist-aside { width: 100%; gap: 0; } 
    .cregist-aside .cregist-preview { padding: 0; background: transparent; box-shadow: none; border: 0; gap: 0; } 
    .cregist-aside .cregist-preview__hd,
    .cregist-aside .cregist-preview__body { display: none; } 
    .cregist-aside .cregist-preview__btn { padding: 0; display: flex; justify-content: right; } 
    .cregist-aside .cregist-preview__btn .btn-comm { height: 48px; font-size: 15px; cursor: pointer; width: auto; }
}

/* ===== 신규 캠페인 등록 (업체&채널) 모바일 — Figma 995:38006 ===== */
@media (max-width: 768px) {
    /* 폼: 한 개의 흰 카드 → 섹션별 분리 카드 */
    .cregist-layout:has(.cch-btn-group) .ss-form { background: transparent; box-shadow: none; border-radius: 0; padding: 0; gap: 16px; }
    .cregist-layout:has(.cch-btn-group) .form-section {display: flex;flex-direction: column;gap: 16px;background: var(--white);border-radius: 14px;box-shadow: 6px 6px 54px 0 rgba(0,0,0,0.05);padding: 16px 26px;}
    .cregist-layout:has(.cch-btn-group) .form-section__title { font-size: 16px; }

    /* 캠페인 불러오기: 입력 + 불러오기 버튼 한 줄 */
    .cregist-layout:has(.cch-btn-group) .file-wrap.flex-input { flex-direction: row; align-items: center; gap: 8px; width: 100%; }
    .cregist-layout:has(.cch-btn-group) .file-wrap.flex-input .wrap-input.inner { flex: 1; min-width: 0; width: auto; }
    .cregist-layout:has(.cch-btn-group) .file-wrap.flex-input .file-upload__trigger {flex: 0 0 auto;width: auto;white-space: nowrap;min-height: 36px;height: 36px;padding: 0 20px;border-radius: 10px;border: 1px solid var(--regluar);background: var(--black);color: var(--white);}

    /* 소제목(단일 채널/구매평 추가/체험형/콘텐츠형) 디바이더 */
    .cregist-layout:has(.cch-btn-group) .form-subhead {margin-bottom: 12px;width: 100%;}
    .cregist-layout:has(.cch-btn-group) .form-subhead::after {}

    /* 진행 채널 버튼: 2열 그리드 */
    .cregist-layout:has(.cch-btn-group) .cch-btn-group { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; width: 100%; }
    .cregist-layout:has(.cch-btn-group) .cch-btn,
    .cregist-layout:has(.cch-btn-group) .cch-add-btn { height: 36px; padding: 0 12px; justify-content: center; }
    .cregist-layout:has(.cch-btn-group) .cch-btn i{display: none;}

    /* 체험 방식 버튼: 2열 그리드 */
    .cregist-layout:has(.cch-btn-group) .cmethod-btn-group { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; width: 100%; }
    .cregist-layout:has(.cch-btn-group) .cmethod-btn { height: 48px; padding: 0 12px; justify-content: center; }
    .cregist-layout:has(.cch-btn-group) .cmethod-btn .ico{width: 24px; height: 24px;}

    /* 결제카드: 전체 너비 */
    .cregist-layout:has(.cch-btn-group) .cform-card-input { width: 100%; }

    /* 사이드바(진행 상태·미리보기·임시저장): 모바일 미노출 */
    .cregist-layout:has(.cch-btn-group) .cregist-aside { display: none; }

    /* 다음 버튼: 카드 아래 일반 흐름, 우측 정렬 */
    .cregist-layout:has(.cch-btn-group) .ss-actions { position: static; margin-top: 0; }
    .cregist-layout:has(.cch-btn-group) .ss-actions__buttons { justify-content: flex-end; }
    .cregist-layout:has(.cch-btn-group) .ss-actions__buttons .btn-comm.bg-red { width: auto; padding: 0 24px; border: 0; background: #EF3739; color: #fff; }
}

/* ===== 신규 캠페인 등록 (캠페인 정보 / FREE·PLUS) 모바일 — Figma 995:39649 ===== */
@media (max-width: 768px) {
    /* 폼: 한 개의 흰 카드 → 섹션별 분리 카드 */
    .cregist-layout:has(.cost-total-box) .ss-form { background: transparent; box-shadow: none; border-radius: 0; padding: 0; gap: 16px; }
    .cregist-layout:has(.cost-total-box) .form-section { display: flex; flex-direction: column; gap: 16px; background: var(--white); border-radius: 14px; box-shadow: 6px 6px 54px 0 rgba(0,0,0,0.05); padding: 16px 20px 24px; }
    .cregist-layout:has(.cost-total-box) .form-section__title { font-size: 16px; }

    /* 캠페인 일정: 라벨 + 날짜 입력 한 줄, 날짜 박스 가변 너비 */
    .cregist-layout:has(.cost-total-box) .cregist-schedule-field .flex-input.flex {gap: 4px;width: 100%;min-width: 0;}
    .cregist-layout:has(.cost-total-box) .cregist-schedule-field .flex-input.flex .form-label {min-width: auto;font-size: 13px;flex: 0 0 68px;}
    .cregist-layout:has(.cost-total-box) .cregist-schedule-field .date-range-wrap.combined {width: auto;flex: 1;min-width: 0;padding: 0 12px;gap: 8px;height: 36px;}
    .cregist-layout:has(.cost-total-box) .cregist-schedule-field .dr-input {width: 72px;min-width: 0;font-size: 13px;}
    .cregist-layout:has(.cost-total-box) .cregist-schedule-field .date-range-wrap.combined.single .dr-input { flex: 1; }

    /* 캠페인 이미지: 라벨·캡션·업로드 박스 세로 스택, 박스 전체 너비 */
    .cregist-layout:has(.cost-total-box) .img-upload-section { align-items: stretch; width: 100%; }
    .cregist-layout:has(.cost-total-box) .img-upload-row { flex-direction: column; align-items: stretch; gap: 8px; width: 100%; }
    .cregist-layout:has(.cost-total-box) .img-upload-row__label { width: auto; padding-top: 0; }
    .cregist-layout:has(.cost-total-box) .img-upload-row__right { flex-direction: column; gap: 6px; width: 100%; }
    .cregist-layout:has(.cost-total-box) .img-upload-row__content { width: 100%; }
    .cregist-layout:has(.cost-total-box) .img-upload-box {width: 100%;height: 72px;margin-top: 4px;}
    .cregist-layout:has(.cost-total-box) .img-specs { padding-top: 0; }
    .img-upload-box__sub {font-size: 12px;}
    .img-upload-box__content {gap: 4px;}
    .img-upload-box__preview {height: 100%; width: auto;}
    .img-upload-box--has-img {padding: 15px 16px;}
    
    /* 구매처 선택: 셀렉트 + 입력 세로 스택, 전체 너비 */
    .cregist-layout:has(.cost-total-box) .flex-input.flex:has(.select-wrap) { flex-direction: column; align-items: stretch; gap: 8px; width: 100%; }
    .cregist-layout:has(.cost-total-box) .flex-input.flex:has(.select-wrap) .select-wrap,
    .cregist-layout:has(.cost-total-box) .flex-input.flex:has(.select-wrap) .select-box { width: 100%; }
    .cregist-layout:has(.cost-total-box) .flex-input.flex:has(.select-wrap) .wrap-input { width: 100%; }
    .cregist-layout:has(.cost-total-box) .flex-input.flex:has(.select-wrap) .wrap-input .form-control { width: 100% !important; }

    /* 구매 금액 설정: 라벨(좌) + 입력(우) 한 줄, 입력 우측 정렬
       (일정·구매처 행은 제외) */
    .cregist-layout:has(.cost-total-box) .form-field:not(.cregist-schedule-field) > .flex-input.flex:not(:has(.select-wrap)) {align-items: flex-start;gap: 12px;width: 100%;min-width: 0;justify-content: space-between;}
    .cregist-layout:has(.cost-total-box) .form-field:not(.cregist-schedule-field) > .flex-input.flex:not(:has(.select-wrap)) > .form-label {flex: none;}
    .cregist-layout:has(.cost-total-box) .form-field:not(.cregist-schedule-field) > .flex-input.flex:not(:has(.select-wrap)) > div {flex: 0 0 auto;width: 140px;}
    .cregist-layout:has(.cost-total-box) .form-field:not(.cregist-schedule-field) > .flex-input.flex:not(:has(.select-wrap)) .wrap-input,
    .cregist-layout:has(.cost-total-box) .form-field:not(.cregist-schedule-field) > .flex-input.flex:not(:has(.select-wrap)) .wrap-input.inner {}
    .cregist-layout:has(.cost-total-box) .form-field:not(.cregist-schedule-field) > .flex-input.flex:not(:has(.select-wrap)) .form-control { width: 100% !important; }
    .cregist-layout:has(.cost-total-box) .form-field:not(.cregist-schedule-field) > .flex-input.flex:not(:has(.select-wrap)) .form-helper {white-space: normal;width: 100%;}

    /* 원고료 설정 입력: 전체 너비 */
    .cregist-layout:has(.cost-total-box) .form-field > .wrap-input.inner { width: 100%; }
    .cregist-layout:has(.cost-total-box) .form-field > .wrap-input.inner .form-control { width: 100% !important; }

    /* 매장 방문 정보: 우편번호+검색 / 주소+상세 줄바꿈 */
    .cregist-layout:has(.cost-total-box) .manager-form__address .wrap-input.flex {flex-wrap: wrap;gap: 8px;}
    .cregist-layout:has(.cost-total-box) .manager-form__address .form-control { max-width: none !important; flex: 1; min-width: 0; }
    .cregist-layout:has(.cost-total-box) .manager-form__address .wrap-input:last-child .form-control {flex: none;}
    
    /* 예상 결제 금액 박스: 좌측 마진 제거·패딩 축소·섹션 세로 스택 */
    .cregist-layout:has(.cost-total-box) .cost-total-box { margin-left: 0; }
    .cregist-layout:has(.cost-total-box) .comm-box.border { padding: 20px 16px; }
    .cregist-layout:has(.cost-total-box) .cost-total-row { padding: 16px; }
    .cregist-layout:has(.cost-total-box) .cost-section { flex-direction: column; gap: 8px; }
    .cregist-layout:has(.cost-total-box) .cost-section__l { min-width: 0; }
    .cregist-layout:has(.cost-total-box) .cost-section__line { display: none; }
    .cregist-layout:has(.cost-total-box) .cost-rows { padding-left: 0; padding-top: 0; }

    /* 사이드바: 모바일 미노출 */
    .cregist-layout:has(.cost-total-box) .cregist-aside { display: none; }

    /* 이전/다음 버튼: 카드 아래 일반 흐름, 좌(회색)·우(빨강) 분리 */
    .cregist-layout:has(.cost-total-box) .ss-actions {position: static;margin-top: 0;margin-top: 40px;}
    .cregist-layout:has(.cost-total-box) .ss-actions__buttons.space-between { display: flex; justify-content: space-between; gap: 12px; }
    .cregist-layout:has(.cost-total-box) .ss-actions__buttons .btn-comm {}
    /* 다음(submit) 버튼: 메인 컬러 채움 복원 */
    .cregist-layout:has(.cost-total-box) .ss-actions__buttons .btn-comm.submit { background: var(--main-80); border: 0; color: var(--white); }
}

/* ===== 결제내역 모바일 — Figma 995:46223 ===== */
@media (max-width: 768px) {
    /* 메인 카드: 흰 카드 복원(공통 .cregist-main 투명화 룰 덮어쓰기) */
    .cregist-main:has(.payment-info-row) {background: var(--white);box-shadow: 6px 6px 54px 0 rgba(0,0,0,0.05);border-radius: 14px;padding: 24px 16px;gap: 16px;}

    /* 이용정보 + 비즈머니: 세로 스택 */
    .payment-info-row {flex-direction: column;gap: 24px;}
    .payment-usage-card { flex: 1 1 auto; width: 100%; padding: 16px; }
    .payment-bizmoney-card { width: 100%; padding: 16px; }
    .payment-usage-card h3,
    .payment-bizmoney-header h3 { font-size: 16px; }
    .payment-usage-item p,
    .payment-next-date { font-size: 14px; }
    .payment-balance-item,
    .payment-detail-item { font-size: 14px; }

    /* 카테고리 탭: 균등 분할 (결제내역 전용) */
    .payment-tabs-row { border-bottom: 1px solid #E5E5EC; }
    .payment-category-tabs { gap: 8px; width: 100%; }
    .payment-category-tab {min-width: 72px;flex: 0 0 auto;white-space: nowrap;font-size: 14px;padding-bottom: 12px;}

    /* 필터 드롭다운: 우측 정렬 */
    .payment-tabs-search { margin: 16px 0; }
    .payment-tabs-search .search-form { justify-content: flex-end; }

    /* 결제내역 테이블 → 카드 리스트 변환 */
    .payment-history-table { display: block; }
    .payment-history-table thead { display: none; }
    .payment-history-table colgroup { display: none; }
    .payment-history-table tbody { display: flex; flex-direction: column; gap: 12px; }
    .payment-history-table tbody tr { display: flex; flex-wrap: wrap; align-items: baseline; position: relative; padding: 16px; border: 1px solid #EEF0F4; border-radius: 12px; background: #fff; row-gap: 8px; }
    .payment-history-table tbody tr:hover { background: #fff; }
    .payment-history-table tbody tr:first-child td { padding-top: 0; }

    /* 번호 숨김 */
    .payment-history-table tbody td:nth-child(1) { display: none; }
    /* 내용(제목): 1행 전체 너비 (금액 자리 확보) */
    .payment-history-table tbody td.col-title { order: 1; flex: 1 1 100%; width: 100%; height: auto; padding: 0 80px 0 0; font-size: 15px; font-weight: 500; color: var(--black); white-space: normal; line-height: 1.4; }
    .payment-history-table tbody td.col-title a { color: inherit; }
    /* 금액: 카드 우측 상단 고정 */
    .payment-history-table tbody td:nth-child(5) { position: absolute; top: 16px; right: 16px; width: auto; height: auto; padding: 0; font-size: 15px; font-weight: 600; color: var(--black); }
    /* 메타(날짜 · 결제수단 · 상태): 2행 인라인 + 점 구분 */
    .payment-history-table tbody td:nth-child(2),
    .payment-history-table tbody td:nth-child(4),
    .payment-history-table tbody td:nth-child(6) { order: 2; width: auto; height: auto; padding: 0; font-size: 13px; color: var(--info); display: inline-flex; align-items: center; }
    .payment-history-table tbody td:nth-child(4)::before,
    .payment-history-table tbody td:nth-child(6)::before {content: '·';margin: 0 6px;color: #c4c4c4;min-width: auto;}
}

/* ===== 결제수단 관리 모바일 — Figma 995:46332 ===== */
@media (max-width: 768px) {
    /* 메인 카드: 흰 카드 복원(공통 .cregist-main 투명화 룰 덮어쓰기) */
    .cregist-main:has(.payment-method-cards) {background: var(--white);box-shadow: 6px 6px 54px 0 rgba(0,0,0,0.05);border-radius: 14px;padding: 24px 16px;gap: 16px;}

    /* 안내 메시지 */
    .cregist-main:has(.payment-method-cards) .combo-notice.notice-payment { padding: 16px; }
    .cregist-main:has(.payment-method-cards) .combo-notice.notice-payment .combo-notice__hd {font-size: 14px;align-items: flex-start;gap: 4px;line-height: 1.4;}

    /* 카드/계좌 탭: 좌측 정렬, 본래 너비 */
    .cregist-main:has(.payment-method-cards) .payment-category-tab {min-width: 72px;font-size: 14px;padding-bottom: 12px;}

    /* 헤더: 제목 + 카드추가 1행, 안내문구 2행 전체 너비 */
    .payment-method-header {flex-direction: column;gap: 8px;align-items: flex-start;margin-top: 8px;}
    .payment-method-title {order: 2;}
    .payment-method-add-btn { order: 2; }
    .payment-method-info { order: 3; flex-basis: 100%; width: 100%; }

    /* 카드 목록: 1열 세로 스택 */
    .payment-method-cards { gap: 16px; }
    .payment-method-item { flex-direction: column; gap: 16px; }
    .payment-method-card {width: 100%;gap: 16px;}
    
    /* 카드 액션 버튼: 우측 정렬 유지 */
    .payment-method-card-actions { flex-wrap: wrap; gap: 8px; }
    .btn-comm.secondary.payment-method-card-btn { font-size: 13px; padding: 8px 10px; }

    /* 안내 사항 박스 */
    .payment-method-notes .caution-box__list li { font-size: 13px; }
    .combo-notice__hd .ico.large {
        width: 16px;
        height: 16px;
    }

    .notice-payment + .payment-tabs-row {
        margin-top: 24px;
    }

    .payment-method-header .btn-comm {
        order: 1;
        margin-bottom: 15px;
    }

    .payment-method-info-text {
        font-size: 12px;
    }

    .payment-method-card-number {
        font-size: 18px;
    }

    .payment-method-card-info {
        gap: 8px;
    }
}

/* ===== 블랙리스트 관리 모바일 — Figma 995:46665 ===== */
@media (max-width: 768px) {
    /* 메인 카드: 흰 카드 복원(공통 .cregist-main 투명화 룰 덮어쓰기) */
    .cregist-main:has(.blacklist-history-table) { background: var(--white); box-shadow: 6px 6px 54px 0 rgba(0,0,0,0.05); border-radius: 14px; padding: 16px; gap: 16px; }

    /* 안내 메시지 */
    .blacklist-notice { padding: 16px; align-items: flex-start; gap: 8px; }
    .blacklist-notice-text { font-size: 14px; }

    /* 검색 + 추가 버튼: 추가 버튼 상단(우측), 검색 하단(전체 너비) */
    .blacklist-action-row { flex-direction: column-reverse; align-items: flex-end; gap: 16px; }
    .blacklist-action-row form { width: 100%; }
    .blacklist-action-row .search-form, .blacklist-action-row .search-item, 
    .blacklist-action-row .search-item .wrap-input.inner {width: 100%;max-width: 100%;min-width: auto;}
    .blacklist-add-btn { flex-shrink: 0; }

    /* 테이블 → 카드 리스트 변환 */
    .blacklist-history-table { display: block; }
    .blacklist-history-table thead { display: none; }
    .blacklist-history-table colgroup { display: none; }
    .blacklist-history-table tbody { display: flex; flex-direction: column; gap: 16px; }
    .blacklist-history-table tbody tr { display: flex; flex-wrap: wrap; align-items: center; padding: 16px; border: 1px solid #EEF0F4; border-radius: 12px; background: #fff; row-gap: 12px; }
    .blacklist-history-table tbody tr:hover { background: #fff; }

    /* 모든 td 기본 리셋(공통 bbs-table block 룰 덮어쓰기) */
    .blacklist-history-table tbody td {display: flex;width: auto;padding: 0;border: 0;text-align: left;height: auto;font-size: 14px;}
    .bbs-table.blacklist-history-table tbody tr:first-child td {padding-top: 0;}
    
    /* 1행: 닉네임(좌) + 번호(우) */
    .blacklist-history-table tbody td.col-nick {order: 1;color: var(--black);}
    .blacklist-history-table tbody td.col-num { order: 2; margin-left: auto; font-size: 14px; color: var(--info); }

    /* 2행: 사유 (전체 너비) */
    .blacklist-history-table tbody td.col-title {order: 3;flex-basis: 100%;width: 100%;padding: 0;font-weight: 500;white-space: normal;line-height: 1.4;}

    /* 3행: 전화번호 라벨 + 값 (양끝) */
    .blacklist-history-table tbody td.col-tel { order: 4; flex-basis: 100%; width: 100%; justify-content: space-between; font-size: 14px; color: var(--info); }
    .blacklist-history-table tbody td.col-tel::before {content: '전화번호';color: var(--info);font-weight: 400;}

    /* 4행: 등록일 라벨 + 값 (양끝) */
    .blacklist-history-table tbody td.col-date { order: 5; flex-basis: 100%; width: 100%; justify-content: space-between; font-size: 14px; color: var(--info); }
    .blacklist-history-table tbody td.col-date::before {content: '등록일';co;color: var(--info);font-weight: 400;}

    /* 5행: 삭제 버튼 (전체 너비) */
    .blacklist-history-table tbody td.col-manage { order: 6; flex-basis: 100%; width: 100%; margin-top: 4px; }
    .blacklist-history-table tbody td.col-manage .blacklist-action-btn { width: 100%; }
}

/* ===== 블랙리스트 추가 모달 모바일 — Figma 995:46755 ===== */
@media (max-width: 768px) {
    /* 모달 너비: --wide(600px) 덮어쓰기 */
    #blacklistAddModal .modal-wrap--wide { width: calc(100% - 28px); max-width: calc(100% - 28px); }

    /* 사유 필드: 셀렉트(상단) + 직접입력 인풋(하단) 세로 스택 */
    #blacklistAddModal .blacklist-form-group .wrap-input.flex { flex-direction: column; align-items: stretch; gap: 8px; }
    #blacklistAddModal .blacklist-form-group .wrap-input.flex .select-wrap { width: 140px; }
    #blacklistAddModal .blacklist-form-group .wrap-input.flex .form-control { width: 100%; }

    /* 푸터 버튼: 취소/등록 50:50 전체너비, 높이 48 */
    #blacklistAddModal .modal-footer { gap: 8px; }
    #blacklistAddModal .modal-footer .modal-btn-cancel,
    #blacklistAddModal .modal-footer .modal-btn-confirm { flex: 1; min-width: 0; height: 48px; font-size: 15px; }
    #blacklistAddModal .modal-footer .modal-btn-confirm { background: var(--main); }
}

/* ===== 내 정보 모바일 — Figma 995:46870 ===== */
@media (max-width: 768px) {
    /* 카드 패딩 축소 */
    .myinfo-card.card-item { padding: 16px; }

    /* 프로필 이미지 가운데 정렬 */
    .myinfo-content { text-align: center; }
    .myinfo-form { text-align: left; width: 100%; margin-top: 24px; gap: 24px; }

    /* 섹션: 고정폭(504px) 해제, 전체 너비 */
    .myinfo-form .form-section { width: 100%; }
    /* 세금계산서 2단 → 세로 스택 */
    .form-section-row { flex-direction: column; gap: 24px; }

    /* 이메일 필드: 입력(1행) + @·도메인(2행) 세로 스택 */
    .myinfo-form .manager-form__email { flex-wrap: wrap; gap: 8px; }
    .myinfo-form .form-field .manager-form__email-input { flex: 1 1 100%; max-width: none; }
    .myinfo-form .manager-form__email-input .form-control { width: 100% !important; }
    .myinfo-form .manager-form__email-at { display: inline-block; }
    .myinfo-form .manager-form__email .select-wrap.small,
    .myinfo-form .manager-form__email .select-wrap.small .ss-main { width: auto; flex: 1; }

    /* 사업자등록증 업로드(미리보기형): 세로 스택 */
    .form-file-upload { flex-direction: column; align-items: stretch; }
    .myinfo-form .form-file-upload { height: auto; } /* p40 데스크톱 132px 고정의 모바일 원복 */
    .form-file-upload .file-preview img { width: 100px; height: 100px; object-fit: cover; border-radius: 10px; }
    .file-actions {display: flex;flex-wrap: wrap;gap: 8px 4px;}
    .file-actions .btn-comm.redline { flex-basis: 100%; }
    .store-submit-shell .form-field  .btn-comm.tertiary{
        background: var(--main-80);
        color: var(--white);
        border-color: var(--main-80);
    }
    .form-field .btn-comm.tertiary {
        min-height: 36px;
        height: 36px;
        padding: 0 20px;
        
    }
    .store-submit-shell .form-field .manager-form__address .btn-comm.tertiary{
        background: var(--white);
        color: var(--sub);
        border: 1px solid var(--line-gray);
    }
}


@charset "UTF-8";

/* =========================================================
   로그인 페이지 (login.html) — Figma 3175-103457(PC) / 3173-102159(MO) 최종본 (20260906 교체, 20261011 자산 원본교체·MO 실측 보정)
   ========================================================= */
.login-body { background: #fafafa; }
.login-page { min-height: 100vh; display: flex; flex-direction: column; justify-content: center; padding: 60px 40px; box-sizing: border-box; } 
.login-inner { width: 100%; max-width: 1600px; margin: 0 auto; } 

/* ── 상단: 카드 + 소개 ── */
.login-top { display: flex; align-items: center; justify-content: space-between; gap: 80px; } 

/* 로그인 카드 */
.login-card {flex: 0 0 600px;width: 600px;box-sizing: border-box;padding: 70px 100px;background: #fff;border-radius: 20px;box-shadow: 0 8px 20px rgba(0, 20, 55, .16);} 
.login-brand { display: flex; align-items: center; justify-content: center; gap: 8px; margin-bottom: 40px; }
.login-logo { display: block; height: 34px; width: auto; }
/* 배지 — 시안 3175:103522 실데이터: 134×33 #111 라운드 우상단 10, 패딩 좌우 16, Pretendard 500 24 ls-.6 (skew 없음) */
.login-badge { display: inline-flex; align-items: center; justify-content: center; height: 33px; padding: 0 16px; background: var(--black); border-radius: 0 10px 0 0; box-sizing: border-box; }
.login-badge span { display: inline-block; color: #fff; font-size: 24px; font-weight: 500; letter-spacing: -.6px; white-space: nowrap; }

.login-fields { display: flex; flex-direction: column; gap: 16px; } 
.login-input { height: 56px; border: 1px solid var(--line-gray); border-radius: 10px; background: #fff; transition: border-color .15s; } 
.login-input:focus-within { border-color: var(--main); } 
.login-input input { width: 100%; height: 100%; border: 0; border-radius: 10px; background: transparent; padding: 0 24px; font-size: 16px; font-weight: 500; color: var(--black); letter-spacing: -.4px; box-sizing: border-box; }
.login-input input::placeholder { color: var(--info); font-weight: 500; }
.login-input input:focus { outline: none; }
/* 자동완성 배경이 래퍼 둥근 모서리 밖으로 넘치는 문제 — input에 radius + autofill 배경 오버라이드 */
.login-input input:-webkit-autofill,
.login-input input:-webkit-autofill:hover,
.login-input input:-webkit-autofill:focus { border-radius: 10px; -webkit-box-shadow: 0 0 0 1000px #fff inset; box-shadow: 0 0 0 1000px #fff inset; -webkit-text-fill-color: var(--black); transition: background-color 9999s ease-out 0s; }

.login-options { display: flex; align-items: center; justify-content: space-between; margin-top: 8px; } 
.login-check { display: inline-flex; align-items: center; gap: 8px; cursor: pointer; user-select: none; } 
.login-check input { position: absolute; opacity: 0; width: 0; height: 0; } 
.login-check-box {width: 16.5px;height: 16.5px;border-radius: 2px;x;border: 1px solid #A5A5AF;background: #fff;flex: 0 0 auto;position: relative;transition: background .15s, border-color .15s;} 
.login-check input:checked + .login-check-box {/* background: var(--main); *//* border-color: var(--main); */} 
.login-check input:checked + .login-check-box::after {content: "";position: absolute;left: 3px;top: 4px;width: 10px;height: 7px;background: url(../img/ico_chk_main.svg) no-repeat 50% / cover;} 
.login-check-txt { font-size: 15px; font-weight: 500; color: var(--info); letter-spacing: -.375px; } 
.login-find { font-size: 15px; font-weight: 500; color: var(--info); letter-spacing: -.375px; } 
.login-find:hover { color: var(--sub); } 

.login-actions { display: flex; flex-direction: column; gap: 16px; margin-top: 40px; } 
.login-btn { display: flex; align-items: center; justify-content: center; height: 56px; border-radius: 10px; font-size: 18px; font-weight: 500; letter-spacing: -.45px; cursor: pointer; box-sizing: border-box; transition: background .15s, color .15s; } 
.login-btn-primary { background: var(--main); color: #fff; border: 0; } 
.login-btn-primary:hover { background: var(--strong-hover); } 
.login-btn-outline { background: #fff; color: var(--main); border: 1.5px solid var(--main); } 
.login-btn-outline:hover { background: var(--bg-lightRed); } 

/* 우측 소개 */
.login-intro { flex: 1 1 auto; min-width: 0; } 
.login-intro-text{margin-left: clamp(0px, 4.2vw, 66px);} /* 중간 폭 유동 축소 (2026-10-15 사용자 지적: 애매한 사이즈에서 전체적으로 줄어들게) */
.login-intro-title { color: var(--black); font-size: clamp(28px, 2.6vw, 40px); font-weight: 500; line-height: 1.3; letter-spacing: -1px; }
.login-intro-title strong { display: inline-block; margin-top: 4px; color: var(--main); font-size: clamp(32px, 3.1vw, 48px); font-weight: 700; line-height: 1.3; }

.login-feats {display: flex;flex-wrap: wrap;gap: clamp(12px, 1.6vw, 24px);margin-top: clamp(18px, 1.8vw, 28px);margin-left: clamp(0px, 4.2vw, 66px);} 
.login-feat { display: flex; align-items: center; gap: clamp(10px, 1vw, 16px); } 
.login-feat-ico { width: clamp(40px, 3.1vw, 48px); height: clamp(40px, 3.1vw, 48px); flex: 0 0 auto; display: flex; align-items: center; justify-content: center; background: #fff; border-radius: 12px; box-shadow: 1px 1px 3px rgba(17, 17, 17, .1); }
.login-feat-ico img { width: clamp(26px, 2.1vw, 32px); height: clamp(26px, 2.1vw, 32px); }
.login-feat-meta { display: flex; flex-direction: column; gap: 4px; line-height: 1.45; }
.login-feat-meta strong { color: var(--black); font-size: clamp(14px, 1.05vw, 16px); font-weight: 600; letter-spacing: -.4px; }
.login-feat-meta em { color: var(--sub); font-size: 12px; font-style: normal; letter-spacing: -.3px; white-space: nowrap; }

/* 채널 카드 비주얼 — 개별 노드 레이어 (글로우 3175:103458 / 카드4종 3175:103537 4x / 플로팅 아이콘 3종 SVG).
   컨테이너 = 시안 (870,430) 960×420 영역, 각 레이어는 renderBounds 기준 % 배치 */
.login-mockups { position: relative; margin-top: 32px; max-width: 960px; aspect-ratio: 960 / 420; } /* overflow:hidden 제거 — 글로우가 위(아이콘 행 뒤)까지 퍼지는 시안 의도대로, 가장자리는 radial 마스크가 처리 (2026-10-15) */
.login-mock-bg { position: absolute; left: -5.94%; top: -21.67%; width: 91.67%; -webkit-mask-image: radial-gradient(ellipse 52% 52% at 50% 50%, #000 48%, transparent 84%); mask-image: radial-gradient(ellipse 52% 52% at 50% 50%, #000 48%, transparent 84%); } /* 글로우가 overflow:hidden 경계에서 잘려 가로선 생기던 것 — 가장자리 radial 페이드 (2026-10-15 사용자 지적) */
.login-mock-cards { position: absolute; left: 6.04%; top: 11.19%; width: 73.23%; height: auto; display: block; }
.login-mock-deco { position: absolute; width: 2.5%; }
.login-mock-deco-bubble { left: 28.85%; top: 9.29%; opacity: .08; }
.login-mock-deco-heart { left: 36.88%; top: 20.71%; opacity: .1; }
.login-mock-deco-window { left: 65.73%; top: 75.24%; opacity: .15; }

/* ── 하단: 운영지원 안내 ── */
.login-help { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin-top: 48px; padding: 24px; background: #f8f8fa; border: 1px solid var(--line-gray); border-radius: 14px; box-shadow: 2px 4px 6px rgba(17, 17, 17, .13); box-sizing: border-box; } 
.login-help-info { display: flex; align-items: center; gap: 24px; min-width: 0; } 
.login-help-ico { width: 60px; height: 60px; flex: 0 0 auto; } 
.login-help-ico img { width: 100%; height: 100%; display: block; } 
.login-help-text { display: flex; flex-direction: column; gap: 4px; line-height: 1.4; min-width: 0; } 
.login-help-text strong { color: var(--black); font-size: 18px; font-weight: 500; letter-spacing: -.45px; } 
.login-help-text p { color: var(--sub); font-size: 16px; letter-spacing: -.4px; } 
.login-help-link { display: none; align-items: center; gap: 4px; color: var(--sub); font-size: 14px; letter-spacing: -.35px; } 
.login-help-btn { flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center; gap: 4px; width: 190px; height: 52px; border-radius: 999px; background: #fff; border: 1px solid var(--main-80); color: var(--main); font-size: 16px; font-weight: 500; letter-spacing: -.4px; transition: background .15s; } 
.login-help-btn:hover { background: var(--bg-lightRed); }

/* ── 반응형 (태블릿 이하) ── */
@media (max-width: 1280px) {
    .login-top { gap: 40px; }
}
@media (max-width: 1100px) {
    .login-intro { display: none; }
    .login-top { justify-content: center; }
}
@media (max-width: 768px) {
    /* MO 시안 3173-102159 실측 반영 (20261011): 360 기준 콘텐츠 320 / 입력·버튼 48px / fs 13·15·12 */
    .login-page { padding: 40px 20px; justify-content: flex-start; }
    .login-top { display: block; }
    .login-card { flex: none; width: 100%; max-width: 420px; margin: 40px auto 0; padding: 0; background: transparent; border-radius: 0; box-shadow: none; }
    .login-logo { height: 27px; }
    .login-badge { height: 24px; padding: 0 12px; border-radius: 0 7px 0 0; }
    .login-badge span { font-size: 17px; letter-spacing: -.43px; }
    .login-fields { gap: 8px; }
    .login-input { height: 48px; }
    .login-input input { padding: 0 20px; font-size: 13px; }
    .login-input input::placeholder { font-weight: 400; }
    .login-options { margin-top: 16px; }
    .login-check-txt, .login-find { font-size: 12px; }
    .login-actions { margin-top: 32px; gap: 8px; }
    .login-btn { height: 48px; font-size: 15px; }
    .login-help { max-width: 420px; margin: 16px auto 0; padding: 0; background: transparent; border: 0; box-shadow: none; gap: 14px; }
    .login-help-info { gap: 16px; }
    .login-help-ico { width: 40px; height: 40px; }
    .login-help-text strong { font-size: 13px; }
    .login-help-text p { display: none; }
    .login-help-link { display: inline-flex; font-size: 12px; }
    .login-help-btn { display: none; }
}

/* =========================================================
   회원가입 페이지 (signup.html) — Figma 1294-37526 / 1294-37825
   ========================================================= */
.signup-body { background: #f7f8fa; }
.signup-page { position: relative; min-height: 100vh; display: flex; flex-direction: column; padding: 56px 40px 0; box-sizing: border-box; overflow: hidden; } 
/* 배경 데코 */
.signup-page::before,
.signup-page::after { content: ""; position: absolute; border-radius: 50%; z-index: 0; pointer-events: none; } 
.signup-page::before { width: 853px; height: 853px; top: -120px; right: -120px; background: radial-gradient(circle at 50% 50%, rgba(239, 55, 57, .06), rgba(239, 55, 57, 0) 70%); } 
.signup-page::after { width: 816px; height: 816px; top: -40px; left: -180px; background: radial-gradient(circle at 50% 50%, rgba(239, 55, 57, .05), rgba(239, 55, 57, 0) 70%); } 

/* ── 상단 바 (뒤로가기 + 타이틀 + 로그인) ── */
.signup-topbar { position: relative; z-index: 1; display: flex; align-items: center; justify-content: flex-end; width: 100%; max-width: 1840px; margin: 0 auto; min-height: 52px; margin-bottom: 56px; } 
.signup-topbar__back { position: absolute; left: calc(50% - 357px); top: 50%; transform: translateY(-50%); display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; } 
.signup-topbar__title { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); color: var(--black); font-size: 40px; font-weight: 500; line-height: 1.3; letter-spacing: -1px; white-space: nowrap; } 
.signup-topbar__login { display: inline-flex; align-items: center; gap: 24px; } 
.signup-topbar__login-txt { color: var(--info); font-size: 16px; font-weight: 500; letter-spacing: -.4px; } 
.signup-topbar__login-btn { height: 36px; min-height: 36px; padding: 8px 12px; font-size: 13px; } 

/* ── 카드 ── */
.signup-inner { position: relative; z-index: 1; width: 100%; flex: 1 0 auto; display: flex; justify-content: center; } 
.signup-card { width: 715px; max-width: 100%; box-sizing: border-box; padding: 56px 48px; background: #fff; border-radius: 14px; box-shadow: 6px 6px 54px 0 rgba(0, 0, 0, .05); align-self: flex-start; } 

/* ── 섹션 ── */
.signup-section { display: flex; flex-direction: column; gap: 16px; } 
.signup-section__title { display: flex; align-items: center; gap: 8px; color: var(--black); font-size: 16px; font-weight: 500; letter-spacing: -.4px; } 
/* 공통 폼 구조(.form-section.inquiry) 사용 — 카드 안에서는 패딩/보더 제거 */
.signup-fields { display: flex; flex-direction: column; } 
.form-section.inquiry.signup-fields { padding: 0; gap: 16px; } 
.signup-fields .form-grid { gap: 16px; } 
.signup-divider { width: 100%; height: 1px; border: 0; background: var(--line-gray); margin: 32px 0; } 

/* 인풋 + 안내문구를 세로로 묶는 컬럼 */
.signup-field-col { display: flex; flex-direction: column; gap: 6px; flex: 1; min-width: 0; } 

/* 연락처 인증번호 영역: 인증요청 클릭 전 숨김 (.wrap-input.flex 보다 우선) */
.signup-fields .manager-form__verify { display: none; margin-top: 8px; } 

/* 안내 문구 */
.signup-help { display: inline-flex; align-items: center; gap: 4px; color: var(--info); font-size: 13px; font-weight: 400; letter-spacing: -.325px; } 
.signup-help .ico { filter: var(--filter-disabled); } 

/* ── 약관 동의 ── */
.signup-terms { display: flex; flex-direction: column; gap: 16px; } 
.signup-terms__list { display: flex; flex-direction: column; gap: 16px; padding: 0 24px; list-style: none; margin: 0; } 
.signup-terms__item { display: flex; align-items: center; justify-content: space-between; gap: 12px; } 
.signup-terms__view { display: inline-flex; align-items: center; gap: 4px; color: var(--sub); font-size: 14px; font-weight: 400; letter-spacing: -.35px; white-space: nowrap; } 
.signup-terms__view:hover { color: var(--black); } 

/* 체크박스 */
.signup-check { display: inline-flex; align-items: center; gap: 8px; cursor: pointer; user-select: none; } 
.signup-check input { position: absolute; opacity: 0; width: 0; height: 0; } 
.signup-check__box { width: 24px; height: 24px; border-radius: 6px; border: 1.5px solid var(--line-gray); background: #fff; flex: 0 0 auto; position: relative; transition: background .15s, border-color .15s; } 
.signup-check input:checked + .signup-check__box { background: var(--main); border-color: var(--main); } 
.signup-check input:checked + .signup-check__box::after { content: ""; position: absolute; left: 8px; top: 4px; width: 6px; height: 11px; border: solid #fff; border-width: 0 2px 2px 0; transform: rotate(45deg); } 
.signup-check__txt { display: inline-flex; align-items: center; gap: 4px; color: var(--black); font-size: 14px; font-weight: 400; letter-spacing: -.35px; } 
.signup-check__txt em { font-style: normal; color: var(--info); font-size: 12px; letter-spacing: -.3px; } 
.signup-check--all .signup-check__txt { font-size: 16px; font-weight: 500; letter-spacing: -.4px; } 

/* ── 가입 버튼 ── */
.signup-submit { height: 56px; min-height: 56px; margin-top: 32px; font-size: 18px; font-weight: 600; letter-spacing: -.45px; } 

.form-section.inquiry.signup-fields .manager-form__email-input{max-width: 165px;}
.form-section.inquiry.signup-fields .select-wrap.small .ss-main{width: 150px;}
/* 3차 피드백 s11 확정 (2026-10-11 시안 재확인): 버튼 없는 입력창·이메일 행은 버튼 행의 "입력창" 폭과 동일 — 버튼 영역(96+간격 8=104px)을 비움.
   연락처 스택은 flex 미지정으로 내용폭 수축되던 것을 컬럼 폭에 맞춤 */
.form-section.inquiry.signup-fields .manager-form__stack { flex: 1; }
.form-section.inquiry.signup-fields .signup-field-col > .wrap-input:not(.flex) { margin-right: 104px; }
.form-section.inquiry.signup-fields .manager-form__email { flex: 1; margin-right: 104px; }
.form-section.inquiry.signup-fields .manager-form__email .select-wrap.small .ss-main { width: 100%; } /* s11: 도메인 셀렉트가 남는 폭 채워 행 끝 정렬 */
/* 재검수 p10 (20260819): 피그마 회원가입 완료 모달_260604 실측 — 버튼 280×48 가운데 (full-width 456×36이던 것 수정) */
.signup-complete-modal .btn-comm{width: 280px; height: 48px; font-size: 15px; border-radius: 8px;}

/* ── 반응형 (모바일 이하) ── */
@media (max-width: 768px) {
    .signup-page { padding: 0; background: var(--regular); }
    .signup-page::before, .signup-page::after { display: none; }

    .signup-topbar {
        position: sticky;
        top: 0;
        z-index: 10;
        justify-content: center;
        min-height: 56px;
        margin: 0;
        padding: 0 16px;
        background: var(--regular);
    }
    .signup-topbar__back { left: 16px; width: 24px; height: 24px; }
    .signup-topbar__title { font-size: 18px; letter-spacing: -.45px; }
    .signup-topbar__login { gap: 0; }
    .signup-topbar__login-txt { display: none; }
    .signup-topbar__login-btn { position: absolute; right: 16px; top: 50%; transform: translateY(-50%); height: 32px; min-height: 32px; font-size: 12px; }

    .signup-inner { padding: 16px; }
    .signup-card { width: 100%; padding: 32px 26px; align-self: stretch; }

    .signup-divider { margin: 24px 0; }

    /* 라벨을 인풋 위로 묶는 동작은 공통 .form-section.inquiry 모바일 규칙이 처리 */
    .signup-help { font-size: 12px; letter-spacing: -.3px; }

    /* 약관 */
    .signup-terms__list { padding: 0 8px; gap: 8px; }
    .signup-check__box { width: 16px; height: 16px; border-radius: 4px; }
    .signup-check input:checked + .signup-check__box::after { left: 5px; top: 2px; width: 4px; height: 8px; border-width: 0 1.5px 1.5px 0; }
    .signup-check__txt { font-size: 12px; letter-spacing: -.3px; }
    .signup-check__txt em { font-size: 11px; }
    .signup-check--all .signup-check__txt { font-size: 14px; }
    .signup-terms__view { font-size: 12px; }
    .signup-terms__view span { display: none; }

    .signup-submit { height: 48px; min-height: 48px; font-size: 15px; font-weight: 500; }
    .signup-topbar__back .ico.w_40{width: 24px; height: 24px;}
    .signup-field-col{width: 100%;}
    .form-section.inquiry.signup-fields .signup-field-col > .wrap-input:not(.flex) { margin-right: 0; } /* s11: 모바일은 풀폭 */
    .form-section.inquiry.signup-fields .manager-form__email { margin-right: 0; }
}

/* ====================================================================== */
/* 비즈머니 충전 (bizCharge)                                                */
/* ====================================================================== */
.biz-charge { display: flex; flex-direction: column; gap: 24px; }
.biz-charge .card-item {padding: 40px;}

/* 공통 STEP 헤더 */
.biz-step__head {display: flex;align-items: center;gap: 8px;margin-bottom: 32px;}
.biz-step__badge { display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; }
.biz-step__title { font-size: 18px; font-weight: 500; color: var(--black); letter-spacing: -0.45px; }
.biz-step__body { padding-left: 0; }

/* 공통 도움말/안내 텍스트 */
.biz-help { font-size: 14px; font-weight: 400; color: var(--gray600); letter-spacing: -0.35px; line-height: 1.45; }
.biz-help__link { color: var(--main); text-decoration: underline; }

/* 안내 박스 (연한 회색) */
.biz-notice { display: flex; align-items: center; gap: 6px; padding: 12px 16px; border-radius: 10px; background: var(--regular); font-size: 14px; color: var(--sub); letter-spacing: -0.35px; line-height: 1.45; }
.biz-notice .ico-tooltip { flex-shrink: 0; filter: var(--filter-disabled); }

/* --- 현황 hero 카드 --- */
.biz-charge .biz-charge__hero.card-item{padding: 24px 40px;}
.biz-hero { position: relative; }
.biz-hero__head { display: flex; justify-content: space-between; align-items: flex-start; gap: 24px; }
.biz-hero__desc {font-size: 18px;font-weight: 400;color: var(--sub);letter-spacing: -0.45px;line-height: 1.4;margin-bottom: 40px;}
.biz-hero__img {width: 270px;height: 180px;object-fit: contain;flex-shrink: 0;position: absolute;top: -170px;right: 0;}
.biz-hero__notice {display: flex;align-items: center;gap: 6px;margin-top: 16px;padding: 16px 20px;border-radius: 10px;font-size: 14px;color: var(--black);letter-spacing: -0.35px;background: #F6F8FD;}
.biz-hero__notice .ico-tooltip { flex-shrink: 0; filter: brightness(0) saturate(100%) invert(12%) sepia(39%) saturate(4573%) hue-rotate(228deg) brightness(103%) contrast(106%); }

/* 현황 요약 행 */
.biz-summary {display: flex;align-items: center;}
.biz-summary__col {display: flex;flex-direction: column;justify-content: center;width: 100%;flex: 1;padding: 17.5px 0;position: relative;text-align: center;}
.biz-summary__col:first-child {padding-left: 0;}
.biz-summary__label-row {display: flex;align-items: center;gap: 8px;justify-content: center;}
.biz-summary__col:has(.biz-summary__value--main) .biz-summary__label-row {
    justify-content: left;
}
.biz-summary__label {color: var(--sub);font-size: 16px;font-weight: 500;line-height: 140%; letter-spacing: -0.4px;}
.biz-summary__label-row .ico-tooltip { filter: var(--filter-disabled); }
.biz-summary__chip { display: inline-flex; align-items: center; justify-content: center; padding: 4px 8px; border-radius: 9999px; background: #f6f8fd; font-size: 12px; font-weight: 500; color: var(--system-indigo-900); letter-spacing: -0.3px; }
.biz-summary__value { font-size: 18px; font-weight: 600; color: var(--black); letter-spacing: -0.45px; margin-top: 16px;}
.biz-summary__value--main {font-size: 20px;color: var(--system-indigo-900);letter-spacing: -0.5px;text-align: left;}
.biz-summary__divider {width: 1px;align-self: stretch;min-height: 60px;background: #F1F1F5;}
.biz-summary__refund {margin-left: auto;align-self: flex-end;position: absolute;right: 16px;bottom: 0;color: var(--info);font-size: 12px;font-weight: 400;line-height: 145%; /* 17.4px */letter-spacing: -0.3px;}

/* --- STEP 1 충전 금액 --- */
.biz-amount-chips {display: flex;flex-wrap: wrap;gap: 24px;margin-bottom: 32px;}
.biz-amount-chip {display: inline-flex;align-items: center;justify-content: center;min-width: 120px;height: 48px;padding: 8px 24px;border: 1px solid #A2A2A2;border-radius: 10px;background: #fff;font-size: 16px;font-weight: 500;color: var(--sub);letter-spacing: -0.4px;white-space: nowrap;cursor: pointer;transition: .2s;}
.biz-amount-chip:hover { border-color: var(--system-indigo-900); color: var(--system-indigo-900); }
.biz-amount-chip.is-active { background: #e8eaf6; border-color: var(--system-indigo-900); color: var(--system-indigo-900); }
.biz-amount__wrap{flex: 1;}
.biz-amount-direct { display: flex; align-items: flex-start; gap: 12px; }
.biz-amount-direct__label {margin-top: 13px; font-size: 15px; font-weight: 500; color: var(--black); letter-spacing: -0.375px; white-space: nowrap; }
.biz-amount-direct__field { position: relative; flex: 1; max-width: 512px; display: flex; align-items: center; height: 48px; padding: 8px 16px; border: 1px solid var(--line-gray); border-radius: 10px; background: #fff; }
.biz-amount-direct__field:focus-within { border-color: var(--system-indigo-900); }
.biz-amount-direct__input { flex: 1; border: 0; outline: 0; font-size: 14px; color: var(--black); letter-spacing: -0.35px; background: transparent; }
.biz-amount-direct__input::placeholder { color: var(--gray600); }
.biz-amount-direct__unit { font-size: 14px; color: var(--sub); letter-spacing: -0.35px; }
.biz-amount-direct__field + .biz-help { margin-top: 8px; }

/* --- STEP 2 지출 증빙 탭 --- */
.biz-tabs {display: flex;gap: 24px;}
.biz-tab {flex: 1;max-width: 200px;height: 48px;padding: 8px 24px;border: 1px solid #A2A2A2;border-radius: 10px;background: #fff;font-size: 16px;font-weight: 500;color: var(--sub);letter-spacing: -0.4px;cursor: pointer;transition: .2s;}
.biz-tab:hover { border-color: var(--system-indigo-900); color: var(--system-indigo-900); }
.biz-tab.is-active { background: #e8eaf6; border-color: var(--system-indigo-900); color: var(--system-indigo-900); }
.biz-tab-panel { display: none; }
.biz-tab-panel:not([data-panel="none"]){margin-top: 56px;}
.biz-tab-panel.is-active { display: block; }
.biz-tab-panel__text { font-size: 15px; color: var(--black); letter-spacing: -0.375px; margin-bottom: 16px; }
.biz-form.form-section.inquiry { padding: 0; gap: 16px; }
.biz-form .form-grid { gap: 16px; }
.biz-form .signup-field-col { display: flex; flex-direction: column; gap: 8px; flex: 1; min-width: 0; }
/* 2차 피드백 ㊲㊳ (20260906): 현금영수증 휴대폰 입력창 — [현금영수증 발행] 버튼 오른쪽 끝선 맞춤(509px) + 포커스 시 예시 번호 숨김 */
.biz-tab-panel[data-panel="cash"] .signup-field-col { max-width: 509px; }
.biz-tab-panel[data-panel="cash"] .form-control:focus::placeholder { color: transparent; }

/* 사업자등록번호 분할 */
.biz-bizno .form-control.small { width: 120px; flex: 0 0 auto; }
.biz-bizno__dash {color: var(--gray600);width: 12px;height: 1px;border-bottom: 1px solid #505050;}
/* 사업장주소 */
.biz-addr { display: flex; flex-direction: column; gap: 8px; flex: 1; min-width: 0; }
.biz-addr__btn {gap: 4px;width: 94px;padding: 16px 14px;}
.biz-addr__btn .ico-search { filter: var(--filter-black); }

/* 업로드 완료 카드 */
.biz-file-card { display: flex; gap: 16px; align-items: center; width: 360px; max-width: 100%; padding: 16px; border: 1px solid var(--line-gray); border-radius: 12px; background: var(--bg-lightBlue); }
.biz-file-card__thumb { width: 100px; height: 130px; border-radius: 8px; overflow: hidden; background: #fff; border: 1px solid var(--line-gray); flex-shrink: 0; }
.biz-file-card__thumb img { width: 100%; height: 100%; object-fit: cover; }
.biz-file-card__info { display: flex; flex-direction: column; gap: 8px; flex: 1; min-width: 0; }
.biz-file-card__name { font-size: 14px; color: var(--black); letter-spacing: -0.35px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.biz-file-card__actions { display: flex; gap: 8px; }
.biz-file-card__actions .btn-comm { flex: 1; height: 36px; padding: 0; font-size: 13px; }
.biz-file-card__change.btn-comm { height: 40px; font-size: 14px; }
.biz-file-card__done { display: inline-flex; align-items: center; gap: 4px; margin-left: 8px; font-size: 13px; font-weight: 500; color: #43A047; letter-spacing: -0.325px; white-space: nowrap; }
.biz-file-card__done .ico-success { filter: none; }
/* 좁은 컬럼에서도 업로드 완료 배지가 보이도록 줄바꿈 허용 */
.biz-tax .biz-file-card__name { white-space: normal; overflow: visible; text-overflow: clip; }

/* --- 세금계산서 발행 2단 폼 (form-field 변형) --- */
/* inquiry 기본은 row(head+grid) → 세금계산서는 세로 적층 */
.biz-tax.form-section.inquiry { flex-direction: column; align-items: stretch; }
.biz-tax .biz-tax-cols { display: flex; gap: 88px; align-items: flex-start; }
.biz-tax .biz-tax-cols > .form-grid {flex: 0 1 auto;min-width: 0;gap: 16px;width: auto;} /* 3차 s27②: 좁은 화면 비례 축소 허용 (기존 flex:none) */
/* 3차 s27②: 상단 2단 컬럼 균등 분할 — 피그마 기준 컬럼폭 651(라벨139+입력512), 1920에서 입력 512 확보 */
.biz-tax .biz-tax-cols:not(.biz-tax-cols--bottom) > .form-grid {flex: 1 1 0;max-width: 651px;}
.biz-tax .biz-tax-cols--bottom {margin-top: 16px;gap: 40px;}
/* 입력영역이 컬럼 너비를 채우도록 */
.biz-tax .form-field > *:not(.form-label) {flex: 1 1 0;min-width: 0;}
/* 3차 피드백 s27②: 대표자명/업태/종목/상호 입력창 — 피그마(비즈머니 충전_260604) 실측 512px
   (사업자등록번호 3분할 각 120px 기존 유지) */
.biz-tax .form-field > .wrap-input:not(.flex) {flex: 0 1 512px;max-width: 512px;}
/* 라벨 폭 축소 (공통 inquiry 150px → 100px) */
.form-section.inquiry.biz-form .form-field{gap: 32px;}
.form-section.inquiry.biz-form .form-label { min-width: 107px; white-space: nowrap; }
/* 사업자등록번호 입력칸 균등 분할 */
.biz-tax .biz-bizno {align-items: center;gap: 32px;}
.biz-tax .biz-bizno .form-control.small {flex: 1 1 0;width: auto;min-width: 0;max-width: 120px;}
/* 사업자등록증 첨부 입력 + 삭제(X) */
.biz-file-input { gap: 8px; align-items: center; }
.biz-file-input__field { position: relative; flex: 1 1 0; min-width: 0; }
.biz-file-input__field .form-control { width: 100%; padding-right: 40px; }
.biz-file-input__clear { position: absolute; right: 12px; top: 50%; transform: translateY(-50%); width: 20px; height: 20px; padding: 0; border: 0; border-radius: 50%; background: #c4c4cc; cursor: pointer; }
.biz-file-input__clear::before,
.biz-file-input__clear::after { content: ""; position: absolute; top: 50%; left: 50%; width: 10px; height: 2px; border-radius: 999px; background: #fff; }
.biz-file-input__clear::before { transform: translate(-50%, -50%) rotate(45deg); }
.biz-file-input__clear::after { transform: translate(-50%, -50%) rotate(-45deg); }
/* 발행 이메일 (좁은 컬럼에 맞춤) */
.biz-tax .manager-form__email { display: flex; gap: 8px; align-items: center; max-width: none; flex: 1; min-width: 0; }
.biz-tax .manager-form__email-input {/* flex: 1 1 0; *//* max-width: none; *//* min-width: 0; */max-width: min-content;}
.biz-tax .manager-form__email .select-wrap.small { flex: 0 0 130px; width: 130px; }
.biz-tax .manager-form__email .select-wrap.small .ss-main { width: 100%; }
/* 하단 안내문 */
.biz-tax__note { display: flex; align-items: center; gap: 6px;  font-size: 14px; font-weight: 400; color: var(--gray600); letter-spacing: -0.35px; line-height: 1.45; }
.biz-tax__note .ico-tooltip { flex-shrink: 0; filter: var(--filter-disabled); }
.file-upload__display.small{width: 284px;}
/* 재검수 p30 (20260819): 피그마 2727:98615 완료 카드 360×132 — `.biz-tax .form-field > :not(.form-label)`(0,3,0)의 flex:1 성장을 이기도록 동일 특이도+후순위 */
.biz-tax .form-field > .form-file-upload,
.biz-tax .form-file-upload {width: 360px;height: 132px;flex: 0 0 360px;}
/* 3차 피드백 s27①: 업로드 완료 썸네일 — 피그마 2727:98615 실측 100×100 고정 클립
   (기존: 원본 비율 그대로 렌더되어 360×132 카드를 벗어남) */
.biz-tax .form-file-upload .file-preview {flex: 0 0 100px;width: 100px;height: 100px;border-radius: 10px;overflow: hidden;}
.biz-tax .form-file-upload .file-preview img {display: block;width: 100%;height: 100%;object-fit: cover;}
.biz-type{display: flex; padding: 8px 19px; justify-content: center; align-items: center; border-radius: 4px; background: #F3F3F3; color: var(--sub); font-size: 14px; font-weight: 500;}
.biz-card_info { border-radius: 14px; border: 1px solid var(--line-gray); background: #FFF; padding: 33px 40px; height: 310px; } 
.biz-vaccount__issue { padding: 16px 0; width: 100%; margin: 0 auto; text-align: center; display: flex; flex-direction: column; align-items: center; justify-content: center; } 
.biz-vaccount__left { max-width: 618px; width: 100%; } 
.biz-process__img {width: 48px;height: 48px;background: #E8EAF6;border-radius: 50%;display: flex;align-items: center;justify-content: center;margin-right: 8px;flex: none;} 
.biz-vaccount__info.card-item { width: 100%; } 
.biz-vaccount__info-row {display: flex;align-items: center;justify-content: space-between;padding: 8px 0;} 
.biz-vaccount__info-row dt, .biz-vaccount__info-row dd {font-size: 14px;color: var(--sub);display: flex;align-items: center;padding: 0 8px;} 
.biz-vaccount__info-row:not(:first-child) {border-bottom: 1px solid var(--line-gray);}

@media (max-width: 768px) {
    .biz-tax .biz-tax-cols { flex-direction: column; gap: 16px; }
    .biz-tax .biz-tax-cols--bottom { margin-top: 16px; }
    .form-section.inquiry.biz-tax .form-label { min-width: 0; white-space: normal; }
    .biz-hero__desc { display: none; } 
    .biz-charge .biz-charge__hero.card-item { padding: 16px; } 
    .biz-summary__label-row { gap: 2px; } 
    .form-section.inquiry.biz-form .form-field { gap: 4px; } 
    .biz-tab-panel:not([data-panel="none"]) { margin-top: 32px; } 
    .biz-tax .biz-bizno { gap: 8px; } 
    .biz-tax .biz-bizno .form-control.small { max-width: 76px; } 
    .biz-addr { gap: 0; } 
    .biz-addr .wrap-input.flex + .wrap-input.flex { margin-top: 8px; } 
    .biz-tax .biz-tax-cols > .form-grid { width: 100%; } 
    .file-upload__display.small { width: 100%; height: 36px; } 
    .biz-tax .form-file-upload { width: 100%; height: auto; flex: 1 1 0; } /* p30 데스크톱 360×132 고정의 모바일 원복 */
}

/* --- STEP 3 가상계좌 발급 --- */
.biz-vaccount {display: flex;gap: 56px;align-items: flex-start;}
.biz-vaccount__right {background: #f6f8fd;border: 1px solid var(--line-gray);border-radius: 14px;padding: 24px 40px 45px;max-width: 636px;width: 100%;height: 310px;}

/* 발급 버튼 */
.biz-vaccount__btn {display: flex;align-items: center;justify-content: center;gap: 8px;width: 100%;max-width: 440px;height: 56px;padding: 16px 24px;border: 0;border-radius: 10px;background: var(--main);color: var(--white);cursor: pointer;transition: .3s;font-size: 24px;font-weight: 600;}
.biz-vaccount__btn:hover { background: var(--strong-hover); }
.biz-vaccount__btn-main { display: inline-flex; align-items: center; gap: 8px; font-size: 18px; font-weight: 600; color: #fff; letter-spacing: -0.45px; }
.biz-vaccount__hint {margin-top: 16px;font-size: 15px;color: var(--black);letter-spacing: -0.375px;text-align: center;}

/* 발급 후 계좌정보 (Figma node 1302-37881) */
.biz-vaccount__account { display: flex; align-items: center; justify-content: space-between; gap: 16px; width: 100%; }
.biz-vaccount__account-main { display: flex; flex-direction: column; align-items: flex-start; gap: 16px; min-width: 0; }
.biz-vaccount__bank-logo {height: 36px;width: auto;display: block;}
.biz-vaccount__account-num { font-size: 28px; font-weight: 500; color: #111; letter-spacing: -0.7px; line-height: 1.4; white-space: nowrap; }
.biz-vaccount__account-owner { display: flex; align-items: center; gap: 24px; }
.biz-vaccount__account-owner-label { font-size: 16px; font-weight: 500; color: var(--sub); letter-spacing: -0.4px; }
.biz-vaccount__account-owner-name { font-size: 14px; font-weight: 500; color: var(--sub); letter-spacing: -0.35px; }
.biz-vaccount__copy-btn { flex: 0 0 auto; width: 96px; height: 48px; padding: 8px 24px; border: 1px solid var(--system-indigo-900); border-radius: 10px; background: #fff; color: var(--system-indigo-900); font-size: 16px; font-weight: 500; letter-spacing: -0.4px; cursor: pointer; transition: .2s; }
.biz-vaccount__copy-btn:hover { background: var(--system-indigo-900); color: #fff; }
/* 충전 후 모달 등에서 사용하는 복사 버튼 */
.biz-vaccount__copy { padding: 4px 10px; border: 1px solid var(--line-gray); border-radius: 6px; background: #fff; font-size: 12px; color: var(--sub); cursor: pointer; }
@media (max-width: 768px) {
    .biz-vaccount__account { flex-direction: column; align-items: stretch; gap: 16px; }
    .biz-vaccount__copy-btn { width: 100%; }
}

.biz-vaccount__divider {height: 1px;background: var(--line-gray);margin: 24px 0 16px;}
.biz-vaccount__notice-title {font-size: 14px;font-weight: 500;color: var(--sub);letter-spacing: -0.35px;}

/* 불릿 리스트 */
.biz-bullet-title{color: var(--black); font-size: 16px; font-weight: 500; letter-spacing: -0.4px; margin-bottom: 16px;}
.biz-bullet-list {display: flex;flex-direction: column;}
.biz-bullet-list li {position: relative;padding-left: 4px;font-size: 12px;font-weight: 400;color: var(--info);letter-spacing: -0.325px;line-height: 1.45;}
.biz-bullet-list li::before {content: "";position: absolute;left: 0;top: 7px;width: 2px;height: 2px;border-radius: 50%;background: var(--info);}
.biz-bullet-list li.is-point { color: var(--main); }
.biz-bullet-list li.is-point::before {background: var(--main);}
.biz-bullet-list li strong { font-weight: 600;}
.biz-caution .biz-bullet-list li{font-size: 14px; padding-left: 22px;}
.biz-caution .biz-bullet-list li:not(.is-point){color: var(--sub);}
.biz-caution .biz-bullet-list li::before{width: 6px; height: 6px;}
.biz-caution .biz-bullet-list{gap: 4px;}


/* 충전 절차 */
.biz-process__title { font-size: 16px; font-weight: 600; color: var(--black); letter-spacing: -0.4px; margin-bottom: 24px; }
.biz-process {display: flex;flex-direction: column;gap: 24px;position: relative;}
.biz-process::before {content: "";position: absolute;left: 84px;top: 12px;bottom: 12px;width: 1px;background: #E8EAF6;}
.biz-process__item {display: flex;gap: 16px;align-items: center;position: relative;z-index: 1;}
.biz-process__num { display: inline-flex; align-items: center; justify-content: center; width: 24px; height: 24px; border-radius: 50%; background: #e8eaf6; color: var(--system-indigo-900); font-size: 14px; font-weight: 400; flex-shrink: 0; }
.biz-process__text { display: flex; flex-direction: column; gap: 4px; }
.biz-process__text strong { font-size: 15px; font-weight: 500; color: var(--black); letter-spacing: -0.375px; }
.biz-process__text span { font-size: 13px; font-weight: 400; color: var(--sub); letter-spacing: -0.325px; }
.biz-process__foot { display: flex; align-items: flex-start; gap: 6px; margin-top: 24px; font-size: 13px; color: var(--gray600); letter-spacing: -0.325px; line-height: 1.45; }
.biz-process__foot .ico-tooltip { flex-shrink: 0; margin-top: 1px; filter: var(--filter-disabled); }

/* 하단 유의사항 */
.biz-caution { margin-top: 24px; padding-top: 24px; border-top: 1px solid var(--line-gray); }
/* 안내사항 토글 */
.biz-caution__tit { display: flex; align-items: center; justify-content: space-between; width: 100%; background: none; border: none; padding: 0; cursor: pointer; text-align: left; }
.biz-caution__tit::after { content: ""; flex-shrink: 0; width: 24px; height: 24px; margin-left: 12px; background: url("../img/ico_arrow.svg") no-repeat 50% / 24px 24px; transition: transform 0.3s ease; }
.biz-caution__tit:not(.active)::after { transform: rotate(180deg); }
.biz-caution__box { overflow: hidden; transition: max-height 0.3s ease-out; }

/* --- 결제금액 바 --- */
.biz-paybar { display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.biz-paybar__amount {display: flex;flex-direction: column;gap: 16px;}
.biz-paybar__label { font-size: 18px; font-weight: 500; color: var(--black); letter-spacing: -0.45px; }
.biz-paybar__value {font-size: 32px;font-weight: 600;color: VAR(--system-indigo-900);letter-spacing: -0.7px;}
.biz-paybar__value em {font-size: 24px;font-weight: 500;margin-left: 6px;letter-spacing: -0.4px;}
.biz-paybar__right { display: flex; align-items: center; gap: 24px; }
.biz-paybar__caption { font-size: 13px; color: var(--gray600); letter-spacing: -0.325px; line-height: 1.45; text-align: right; }
.biz-paybar__submit.btn-comm {min-width: 375px;height: 56px;font-size: 18px;font-weight: 500;}

/* --- 반응형 --- */
@media (max-width: 1440px) {
    .biz-summary__col{padding: 17.5px 48px;}
}
@media (max-width: 1280px) {

}
@media (max-width: 1024px) {
    .biz-charge { gap: 16px; }
    .biz-charge .card-item {padding: 16px;}

    .biz-step__head { gap: 8px; margin-bottom: 20px; }
    .biz-step__badge { width: 32px; height: 32px; font-size: 16px; }
    .biz-step__title { font-size: 16px; }

    /* hero */
    .biz-hero__head { flex-direction: row; align-items: center; gap: 12px; }
    .biz-hero__desc { font-size: 14px; letter-spacing: -0.35px; }
    .biz-hero__img { width: 88px; height: 64px; }
    .biz-summary {flex-wrap: wrap;gap: 24px 8px;}
    .biz-summary__col {min-width: 0;gap: 8px;flex: 1;padding: 0;text-align: left;}
    .biz-summary__col:first-child{width: 100%; flex: none;}
    .biz-hero__desc {display: none;}
    .biz-charge .biz-charge__hero.card-item { padding: 16px; } 
    .biz-summary__label-row { gap: 2px; justify-content: left; } 
    .biz-summary__label { font-size: 14px; }
    .biz-summary__value {font-size: 16px;margin-top: 0;}
    .biz-summary__value--main {font-size: 18px;margin-top: 8px;}
    .biz-summary__divider { display: none; }
    .biz-summary__refund {flex-basis: 100%;margin-left: 0;text-align: right;right: 0;}
    .biz-hero__notice {align-items: flex-start;margin-top: 16px;padding: 8px 14px;font-size: 12px;line-height: 1.5;gap: 4px;}

    /* step1 chips */
    .biz-amount-chips {gap: 8px;margin-bottom: 16px;}
    .biz-amount-chip { width: calc(50% - 4px); height: 44px; padding: 8px 12px; font-size: 14px; }
    .biz-amount-direct { flex-direction: column; align-items: stretch; gap: 8px; }
    .biz-amount-direct__field { max-width: none; }

    /* step2 tabs */
    .biz-tabs { flex-direction: column; gap: 8px; }
    .biz-tab {width: 100%;font-size: 14px;height: 44px;max-width: 100%;}
    .biz-file-card { width: 100%; }

    /* step3 */
    .biz-vaccount { flex-direction: column; gap: 16px; }
    .biz-vaccount__right {flex: none;padding: 24px 21px;height: auto;}
    .biz-vaccount__btn {max-width: none;font-size: 16px;}
    .biz-vaccount__notice-title {margin-bottom: 4px;}
    .biz-vaccount__btn-main { font-size: 16px; }
    .biz-vaccount__info { max-width: none; }
    .biz-card_info { padding: 16px 24px; height: auto; } 
    .biz-vaccount__issue { padding: 8px 0 0; } 
    .biz-vaccount__btn .ico.large { width: 16px; height: 16px; } 
    .biz-vaccount__hint { font-size: 12px; } 
    .biz-process__img { display: none; } 
    .biz-process::before { left: 12px; } 
    .biz-process__title { font-size: 14px; font-weight: 400; margin-bottom: 12px; } 
    .biz-process__text strong { font-size: 13px; } 
    .biz-process__text span { font-size: 12px; } 
    .biz-caution .biz-bullet-list li { font-size: 12px; padding-left: 6px; } 
    .biz-caution .biz-bullet-list li::before { width: 2px; height: 2px; } 

    /* paybar */
    .biz-paybar { flex-direction: column; align-items: stretch; gap: 16px; }
    .biz-paybar__amount {justify-content: space-between;gap: 8px;}
    .biz-paybar__value {font-size: 24px;}
    .biz-paybar__right { flex-direction: column; align-items: stretch; gap: 12px; }
    .biz-paybar__caption { text-align: left; }
    .biz-paybar__submit.btn-comm {width: 100%;height: 36px;min-width: auto;font-size: 13px;}
    .biz-paybar__value em {font-size: 16px;}
    .biz-paybar__label {font-size: 16px;}
}

/* ===== 비즈머니 모달 (환불 안내/신청/완료, 충전 후) ===== */
.biz-modal .modal-wrap { max-height: 92vh; overflow-y: auto; }
.biz-modal .modal-content { gap: 16px; }
.biz-modal--wide .modal-wrap { width: 600px; }
.biz-modal--wide .modal-btn-confirm,
.biz-modal--wide .modal-btn-cancel{height: 48px; width: 200px; font-size: 16px;}
.biz-refund.biz-modal .modal-content{margin-top: 16px;}

/* navy 확인 버튼 (환불 계열) */
.modal-overlay.biz-modal--navy .modal-btn-confirm { background: var(--system-indigo-900); color: #fff; }
.biz-modal--navy .modal-btn-confirm:hover { background: #161d68; }
/* red 버튼 (충전 후) */
.biz-modal-btn-red.modal-btn-confirm { background: var(--main); color: #fff; }
.biz-modal-btn-red.modal-btn-confirm:hover { background: var(--strong-hover); }
.biz-modal-footer--split { display: flex; gap: 8px; width: 100%; }

/* 안내 박스 */
.biz-modal-guidebox { max-width: 356px; width: 100%; margin: 0 auto; }
/* 피드백 P6: 비즈머니 환불 안내 모달 — 안내 문구 줄바꿈 없이 한 줄 유지 (실렌더 최장 329px로 박스만 380px 확장, 모달 너비 520px는 시안 유지) */
@media (min-width: 769px) {
    #bizRefundGuideModal .biz-modal-guidebox { max-width: 380px; }
    #bizRefundGuideModal .biz-bullet-list li { white-space: nowrap; }
}
.biz-modal-guidebox.card-item{padding: 16px 22px;}
.biz-modal-guidebox .biz-vaccount__notice-title{margin-bottom: 8px; color: var(--black);}
.biz-modal-guidebox .biz-bullet-list li{font-size: 14px;color: var(--black);padding-left: 6px;}
.biz-modal-guidebox .biz-modal-kv{font-size: 14px; color: var(--black);}
.biz-modal-guidebox.row-item .biz-bullet-list li::before{top: 9px;}

/* 체크박스 */
.check-area .biz-check input[type=checkbox]:checked ~ label::before, 
.check-area .biz-check input[type=radio]:checked ~ label::before{background-image: url('../img/ico_chk_indigo.svg')}


/* 금액 표시 */
.biz-refund .biz-paybar{justify-content: center; padding: 24px 0; text-align: center; border-top: 1px solid var(--line-gray); border-bottom: 1px solid var(--line-gray);}
.biz-refund .biz-paybar__amount{gap: 4px;}
.biz-refund .biz-paybar__label{font-size: 16px; color: var(--sub);}
.biz-refund .biz-paybar__value em{font-size: 12px; color: var(--info);}

/* 박스 묶음 */
.biz-refund__wrap{display: flex; flex-direction: column; gap: 20px; padding: 0 7.5px;}
.row-item .card-item.biz-modal-box {padding: 16px 24px; display: flex; flex-direction: column; gap: 8px; }
.biz-modal-box__title {font-size: 16px;font-weight: 500;color: var(--black);letter-spacing: -0.4px;}

/* 환불 신청 금액 입력 */
.biz-refund-input {display: flex;align-items: center;gap: 31px;}
.biz-refund-input .biz-amount-direct__field { max-width: none; }
.biz-refund-input__all.btn-comm {flex: 0 0 auto;height: 48px;padding: 0 24px;border: 1px solid var(--system-indigo-900);border-radius: 10px;background: #fff;color: var(--system-indigo-900);font-size: 14px;font-weight: 500;white-space: nowrap;}
.biz-refund-input__all.btn-comm:hover { background: #e8eaf6; }

/* 환불 계좌 2열 그리드 */
.biz-modal-grid2 {display: grid;grid-template-columns: 1fr 1fr;gap: 16px 24px;}
.biz-file-trigger { display: flex; align-items: center; justify-content: center; gap: 4px; width: 100%; height: 48px; padding: 8px 16px; border: 1px solid var(--line-gray); border-radius: 10px; background: #fff; font-size: 14px; font-weight: 400; color: var(--gray600); letter-spacing: -0.35px; cursor: pointer; transition: .2s; }
.biz-file-trigger:hover { border-color: var(--system-indigo-900); color: var(--system-indigo-900); }
.biz-file-trigger .ico-clip { filter: var(--filter-disabled); }
.biz-file-trigger:hover .ico-clip { filter: none; }
.biz-file-trigger__text { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.wrap-input.is-filled .biz-file-trigger { color: var(--black); }
.biz-modal-grid2 .wrap-input,
.biz-modal-grid2 .select-wrap,
.select-wrap.small .ss-main{width: 100%;}

/* 경고 박스 (계좌 명의) */
.biz-modal-warn {display: flex;align-items: center;gap: 16px;padding: 12px 16px;border-radius: 14px;background: #F4F5FB;border: 1px solid var(--system-indigo-600);margin-top: 8px;}
.biz-modal-warn > .ico { flex: 0 0 auto; margin-top: 2px;}
.ico-caution-indigo{background-image: url('../img/ico_caution_indigo.svg')}
.biz-modal-warn__title {font-size: 14px;font-weight: 500;color: var(--black);letter-spacing: -0.35px;margin-bottom: 4px;}
.biz-modal-warn__desc { font-size: 13px; font-weight: 400; color: var(--sub); letter-spacing: -0.325px; line-height: 1.5; }

/* 환불 정보 박스 (계좌 요약) */
.biz-amount__result .biz-paybar { flex-direction: column; }
.biz-modal-account__row dt { display: flex; align-items: center; gap: 6px; }
.form-grid.biz-form {margin-top: 8px;}
.form-grid.biz-form .form-label{margin-bottom: 4px;}
.biz-refund .biz-amount__result .biz-paybar{border-color: var(--system-indigo-900);}

/* 완료 모달 불릿 */
.biz-modal-bullets { margin-top: 4px; }

/* 충전 후 모달 */
.biz-modal-icon { display: inline-flex; align-items: center; justify-content: center; width: 56px; height: 56px; border-radius: 50%; margin: 0 auto 4px; }
.biz-modal-icon--bank { background: #F6F8FC; width: 88px; height: 88px;} /* 3차 s28: 시안 실측 #F6F8FC (기존 #e8eaf6) */
.biz-modal-icon--bank .ico.large{width: 48px; height: 48px;} /* 3차 s28: 글리프 48 (기존 56) */
.biz-modal-icon--charge { background: #fff4f4; width: 88px; height: 88px; border-radius: 50%; }
.biz-modal-icon--charge .ico.large { width: 56px; height: 56px; }
/* 금액 박스 - 세로 중앙 정렬 */
.biz-modal-amount--stack { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 4px; text-align: center; }
.biz-modal-amount--stack .biz-modal-amount__value { font-size: 28px; font-weight: 600; }
.biz-modal-amount--stack.biz-modal-amount--bordered { width: fit-content; min-width: 300px; margin: 0 auto; padding: 16px 24px; border-radius: 14px; background: #f6f8fd; }
/* 모달 하단 안내 문구 */
.biz-modal-note { display: flex; align-items: center; justify-content: center; gap: 6px; margin-top: 12px; font-size: 13px; font-weight: 400; color: var(--gray600); letter-spacing: -0.325px; text-align: center; }
/* 가상계좌 카드 (Figma node 1302-40356) */
.biz-modal-bank { display: flex; align-items: flex-start; gap: 20px; padding: 24px 40px; border-radius: 14px; background: #F6F8FC; border: 1px solid var(--line-gray); } /* 3차 s28: 로고-본문 간격 20·배경 #F6F8FC 실측 */
.biz-modal-bank__logo { flex: 0 0 auto; width: 40px; height: 40px; overflow: hidden; }
.biz-modal-bank__logo img { display: block; height: 40px; width: auto; }
.biz-modal-bank__body { flex: 1 1 0; min-width: 0; display: flex; flex-direction: column; gap: 4px; }
.biz-modal-bank__name { font-size: 14px; font-weight: 500; color: #111; letter-spacing: -0.35px; }
.biz-modal-bank__numrow { display: flex; align-items: center; gap: 32px; }
.biz-modal-bank__num { font-size: 28px; font-weight: 500; color: #111; letter-spacing: -0.7px; line-height: 1.4; white-space: nowrap; }
.biz-modal-bank__copy { display: inline-flex; align-items: center; justify-content: center; gap: 4px; height: 36px; padding: 4px 16px; border: 1px solid var(--line-gray); border-radius: 8px; background: #fff; font-size: 14px; font-weight: 500; color: var(--system-indigo-900); letter-spacing: -0.35px; cursor: pointer; } /* 3차 s28: radius 8 실측 */
.biz-modal-bank__divider { height: 1px; background: var(--line-gray); margin: 12px 0; }
.biz-modal-bank__owner { display: flex; align-items: center; gap: 24px; }
.biz-modal-bank__owner span { font-size: 14px; font-weight: 500; color: var(--sub); letter-spacing: -0.35px; }

/* 입금 기한 박스 (Figma node 1302-40375) */
.biz-modal-deadline {display: flex;align-items: stretch;gap: 16px;padding: 16px 24px;border-radius: 12px;border: 1px solid var(--line-gray);}
.biz-modal-deadline__col {display: flex;align-items: flex-start;gap: 8px;min-width: 0;}
.biz-modal-deadline__ico {flex: 0 0 auto;display: inline-flex;align-items: center;justify-content: center;width: 40px;height: 40px;background: #F6F8FC;border-radius: 50%;}
.biz-modal-deadline__text { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.biz-modal-deadline__label {font-size: 12px;font-weight: 400;color: var(--gray600);letter-spacing: -0.325px;}
.biz-modal-deadline__text > strong {font-size: 14px;font-weight: 600;color: var(--black);letter-spacing: -0.4px;}
.biz-modal-deadline__divider { flex: 0 0 1px; width: 1px; background: var(--line-gray); align-self: stretch; }

/* 빨간 안내 박스 */
.biz-modal-redbox {display: flex;align-items: flex-start;gap: 18px;padding: 16px 24px;border-radius: 12px;background: #FFF6F7;border: 1px solid var(--line-gray);} /* 3차 s28: 배경 #FFF6F7·아이콘-텍스트 간격 18 실측(19) */
.biz-modal-redbox > .ico { flex: 0 0 auto; margin-top: 2px; filter: var(--filter-main); }
.biz-modal-redbox__title { font-size: 14px; font-weight: 600; color: var(--main); letter-spacing: -0.35px; margin-bottom: 8px; } /* 3차 s28: 제목-설명 간격 8 실측 */
.biz-modal-redbox__desc {font-size: 12px;font-weight: 400;color: var(--info);letter-spacing: -0.325px;line-height: 1.5;}
.biz-modal-redbox .biz-redbox-ico{flex: none; width: 40px;height: 40px;border-radius: 999999px;background: #FFD0D0;display: flex;align-items: center;justify-content: center;}
.biz-modal-redbox .biz-redbox-ico .ico {filter: var(--filter-main);}
.biz-modal--charge .modal-wrap{width: 600px;}
/* 3차 피드백 s28: 충전 후 모달 내부 정합 — 피그마 「비즈머니 충전 후 모달_260601」 실측
   (헤더 72 / 섹션 간격 24 / 아이콘 하단 14 / 금액 스택 32px 네이비·하단 8 / 안내→버튼 32 / 버튼 200×48 센터) */
.biz-modal--charge .modal-header { height: 60px; } /* wrap gap 12 포함 상단 72 = 시안 71 */
.biz-modal--charge .modal-content { gap: 24px; }
.biz-modal--charge .biz-modal-icon { margin-bottom: 6px; } /* body gap 8 포함 14 */
.biz-modal--charge .modal-desc { margin-top: 6px; }
.biz-modal--charge .modal-desc strong { color: var(--system-indigo-900); font-weight: 600; }
.biz-modal--charge .biz-modal-amount--stack { gap: 10px; margin-bottom: 8px; }
.biz-modal--charge .biz-modal-amount__label { font-size: 14px; color: var(--sub); letter-spacing: -0.35px; }
.biz-modal--charge .biz-modal-amount--stack .biz-modal-amount__value { font-size: 32px; font-weight: 600; color: var(--system-indigo-900); letter-spacing: -0.8px; }
.biz-modal--charge .modal-footer { padding-top: 20px; } /* wrap gap 12 포함 32 = 시안 34 */
.biz-modal--charge .biz-modal-footer--split { justify-content: center; }
.biz-modal--charge .biz-modal-deadline .biz-bullet-list li { white-space: nowrap; } /* 시안 1줄 불릿 — 600px 기준 한 줄 유지 */
.biz-modal--charge .biz-modal-redbox__desc { white-space: nowrap; letter-spacing: -0.6px; } /* 시안 1줄 설명 — 렌더 자간 보정 */
.ico-bank_check { background-image: url('../img/ico_bank_check.svg'); }

.biz-modal-confirm .biz-modal-guidebox{max-width: 392px;}
.biz-modal-confirm .biz-caution{max-width: 392px; width: 100%; margin: 0 auto; padding-top: 0; margin-top: 0; border: none;}
.biz-modal-confirm .biz-caution .biz-bullet-list li{padding-left: 8px;}
.biz-modal-confirm .biz-caution .biz-bullet-list li::before{width: 4px; height: 4px;}

@media (max-width: 768px) {
    .biz-modal--wide .modal-wrap { width: calc(100% - 28px); }
    .biz-modal-guidebox { padding: 16px; }
    .biz-modal-deadline { flex-direction: column; padding: 16px; }
    .biz-modal-grid2 { grid-template-columns: 1fr; }
    .biz-refund-input { flex-direction: column; align-items: stretch; }
    .biz-refund-input__all.btn-comm {width: calc(100% - 32px);position: absolute;bottom: 24px;height: 36px;font-size: 13px;}
    .biz-modal-deadline__ico {width: 32px;height: 32px;}

    /* ===== 충전 후(입금 정보) 모달 모바일 ===== */
    /* 헤더: 아이콘 축소(64px), 타이틀 16px, 안내 문구 숨김 */
    .biz-modal--charge .biz-modal-icon--bank { width: 64px; height: 64px; }
    .biz-modal--charge .biz-modal-icon--bank .ico.large { width: 40px; height: 40px; }
    .biz-modal--charge .modal-message { font-size: 16px; }
    .biz-modal--charge .modal-desc { display: none; }

    /* 금액: 가운데 정렬 + 세로 적층 */
    .biz-modal--charge .biz-modal-amount { display: flex; flex-direction: column; align-items: center; gap: 4px; text-align: center; }
    .biz-modal-amount__value { font-size: 24px; font-weight: 600; color: var(--system-indigo-900); letter-spacing: -0.6px; }
    .biz-modal--charge .biz-modal-amount--stack .biz-modal-amount__value { font-size: 24px; } /* 3차 s28 데스크톱 32px의 모바일 원복 */

    /* 가상계좌 카드: 로고+은행명 한 줄, 계좌번호/예금주/복사 버튼 세로 적층 */
    .biz-modal-bank { flex-wrap: wrap; align-items: center; gap: 8px; padding: 24px 16px; }
    .biz-modal-bank__body { display: contents; }
    .biz-modal-bank__numrow { display: contents; }
    .biz-modal-bank__logo { flex: 0 0 auto; width: auto; height: 20px; }
    .biz-modal-bank__logo img { height: 20px; }
    .biz-modal-bank__name { display: block; flex: 1 1 auto; order: 0; }
    .biz-modal-bank__num { order: 1; flex: 0 0 100%; font-size: 24px; letter-spacing: -0.6px; }
    .biz-modal-bank__owner { order: 2; flex: 0 0 100%; gap: 24px; }
    .biz-modal-bank__copy {order: 3;flex: 0 0 100%;width: 100%;margin-top: 8px;border-radius: 10px;}
    .biz-modal-bank__divider { display: none; }

    /* 입금 기한: 세로 적층 + 가로 구분선 */
    .biz-modal-deadline__divider { width: 100%; height: 1px; flex-basis: 1px; align-self: auto; }

    /* 하단 버튼: 가로 배치 유지(닫기 : 복사하기 = 1 : 1.6) */
    .biz-modal-footer--split { flex-direction: row; }
    .biz-modal-footer--split .modal-btn-cancel { flex: 1 1 0; width: auto; }
    .biz-modal-footer--split .modal-btn-confirm { flex: 1.6 1 0; width: auto; }
    .biz-modal-redbox { align-items: center; padding: 16px; gap: 8px; } 
    .biz-modal-redbox .biz-redbox-ico { width: 32px; height: 32px; } 
    .biz-modal-redbox .biz-redbox-ico .ico { width: 18px; height: 18px; }
    
    .biz-refund__wrap{padding: 0;}
    .row-item .card-item.biz-modal-box:has(.biz-refund-input__all) {padding-bottom: 76px;}
    .row-item .card-item.biz-modal-box { padding: 24px 16px; gap: 4px; } 
    .biz-modal-box__title { font-size: 14px; } 
    .biz-help { font-size: 12px; } 
    .biz-file-trigger { height: 36px; padding: 0; } 
    .biz-modal-warn .ico.w_32 { width: 24px; height: 24px; } 
    .biz-modal-warn__title { font-size: 13px; } 
    .biz-modal-warn__desc { font-size: 12px; } 
    .biz-vaccount__info-row dt { font-size: 13px; } 
    .biz-vaccount__info-row dd { font-size: 12px; } 
    .biz-vaccount__info-row:last-child { margin-top: 8px; } 
    .biz-vaccount__info.card-item { padding: 8px 8px 16px; } 
    .biz-modal-guidebox.card-item { padding: 16px; } 
    .biz-modal-guidebox .biz-bullet-list li { font-size: 12px; } 
}

/* ===== 강제충전 STEP1 (고정 충전 금액) — Figma node 1302-38275 ===== */
.biz-force-amount { display: flex; align-items: center; gap: 88px; }
.biz-force-amount__left { flex: 0 1 495px; min-width: 0; display: flex; flex-direction: column; }
.biz-force-amount__right {flex: 0 0 auto;display: flex;align-items: center;padding-left: 88px;align-self: stretch;position: relative;}
.biz-force-amount__right::before { content: ''; width: 1px; height: 168px; background: #F1F1F5; position: absolute; top: 50%; left: 0; transform: translateY(-50%); } 
.biz-force-amount__label { font-size: 16px; font-weight: 500; color: #111; letter-spacing: -0.4px; }
.biz-force-amount__value { margin-top: 8px; font-size: 18px; font-weight: 500; color: var(--system-indigo-900); letter-spacing: -0.45px; line-height: 1.3; }
.biz-force-amount__value span { font-size: 40px; font-weight: 600; letter-spacing: -1px; }
.biz-force-amount__value em { margin-left: 4px; font-size: 14px; font-weight: 400; font-style: normal; color: var(--gray600); letter-spacing: -0.35px; }
.biz-force-campaign { display: flex; align-items: center; gap: 16px; margin-top: 16px; padding: 16px 24px; border: 1px solid #f1f1f5; border-radius: 14px; background: #fff; }
.biz-force-campaign__thumb { flex: 0 0 auto; width: 72px; height: 72px; border-radius: 8px; overflow: hidden; background: var(--regular); }
.biz-force-campaign__thumb img { width: 100%; height: 100%; object-fit: cover; }
.biz-force-campaign__info { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.biz-force-campaign__label { font-size: 14px; font-weight: 500; color: #111; letter-spacing: -0.35px; }
.biz-force-campaign__name { font-size: 14px; font-weight: 400; color: var(--sub); letter-spacing: -0.35px; line-height: 1.45; }
.biz-force-breakdown { width: 264px; max-width: 100%; display: flex; flex-direction: column; gap: 8px; }
.biz-force-breakdown__row { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.biz-force-breakdown__row dt { font-size: 15px; font-weight: 400; color: var(--sub); letter-spacing: -0.375px; }
.biz-force-breakdown__row dd { font-size: 16px; font-weight: 400; color: var(--sub); letter-spacing: -0.4px; text-align: right; }
.biz-force-breakdown__divider { height: 1px; background: var(--line-gray); margin: 16px 0; }
.biz-force-breakdown__row--total dt { font-size: 16px; font-weight: 400; color: #111; letter-spacing: -0.4px; }
.biz-force-breakdown__row--total dd { font-size: 20px; font-weight: 500; color: #111; letter-spacing: -0.5px; }

@media (max-width: 768px) {
    .biz-force-amount { flex-direction: column; align-items: stretch; gap: 24px; }
    .biz-force-amount__left { flex: 1 1 auto; }
    .biz-force-amount__right { padding-left: 0; padding-top: 24px; border-left: 0; border-top: 1px solid var(--line-gray); }
    .biz-force-amount__value span { font-size: 32px; }
    .biz-force-breakdown { width: 100%; }
}

.biz-modal-amount.card-item { max-width: 300px; width: 100%; margin: 0 auto; border-radius: 14px; border: 1px solid var(--line-gray); background: #F6F8FD; text-align: center; }
.biz-modal-amount__label { font-size: 14px; font-weight: 500; color: var(--sub); }
.biz-modal-amount .biz-force-amount__value span { font-size: 28px; }
.biz-modal-amount .biz-force-amount__value { margin-top: 4px; }

/* ===== 체험단 평가하기 모달 (Rate Modal) ===== */
.rate-modal .modal-wrap { position: relative; width: 716px; max-width: calc(100% - 28px); padding: 40px; gap: 0; border-radius: 14px; box-shadow: 6px 6px 54px 0 rgba(0, 0, 0, 0.05); max-height: calc(100vh - 80px); overflow-y: auto; }
.rate-modal .modal-close { right: 20px; top: 20px; }

.rate-modal__titlebar { margin-bottom: 32px; }
.rate-modal__title-group { display: flex; flex-direction: column; gap: 4px; }
.rate-modal__title { font-size: 24px; font-weight: 500; color: var(--black); letter-spacing: -0.6px; line-height: 1.4; margin: 0; text-align: left; }
.rate-modal__subtitle { font-size: 18px; font-weight: 400; color: var(--sub); letter-spacing: -0.45px; line-height: 1.4; margin: 0; }

.rate-modal__user-row { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 16px; border: 1px solid var(--line-gray); border-radius: 10px; background: #fff; }
.rate-modal__user-info { display: flex; align-items: center; gap: 40px; flex-wrap: wrap; }
.rate-modal__info-item { display: flex; align-items: center; gap: 8px; font-size: 14px; color: var(--info); letter-spacing: -0.35px; white-space: nowrap; }
.rate-modal__info-item .ico { width: 24px; height: 24px; }
.rate-modal__info-item strong { font-weight: 500; color: var(--black); }
.rate-modal__review-link { display: inline-flex; align-items: center; gap: 4px; border: 1px solid var(--line-gray); border-radius: 4px; padding: 8px 16px; background: #fff; font-size: 12px; font-weight: 500; color: var(--sub); letter-spacing: -0.3px; cursor: pointer; flex: 0 0 auto; }
.rate-modal__review-link .ico { width: 16px; height: 16px; }
.rate-modal__review-link:hover { background: var(--regular); }

.rate-modal__divider { height: 1px; background: var(--line-gray); margin: 32px 0; }

.rate-modal__section-title { font-size: 18px; font-weight: 500; color: var(--black); letter-spacing: -0.45px; margin: 0 0 24px; }
.rate-modal__section-head { display: flex; align-items: center; gap: 16px; margin-bottom: 24px; }
.rate-modal__section-head .rate-modal__section-title { margin: 0; }
.rate-modal__badge { display: inline-flex; align-items: center; padding: 4px 12px; border-radius: 999px; background: #F9F9F9; border: 1px solid #EEE; font-size: 12px; color: var(--sub); letter-spacing: -0.3px; }

/* 1. 전체 평가 */
.rate-emoji-group { display: flex; gap: 32px; }
.rate-emoji-option { display: flex; flex-direction: column; align-items: center; gap: 16px; width: 116px; cursor: pointer; }
.rate-emoji-option input { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0, 0, 0, 0); }
.rate-emoji-icon { width: 64px; height: 72px; background-size: contain; background-repeat: no-repeat; background-position: center; transition: filter .15s ease; }
.rate-emoji-label { font-size: 18px; font-weight: 500; letter-spacing: -0.45px; text-align: center; transition: color .15s ease; }
.rate-emoji-option[data-value="best"] .rate-emoji-icon { background-image: url('../img/ico_rate_best.png'); }
.rate-emoji-option[data-value="good"] .rate-emoji-icon { background-image: url('../img/ico_rate_good.png'); }
.rate-emoji-option[data-value="normal"] .rate-emoji-icon { background-image: url('../img/ico_rate_normal.png'); }
.rate-emoji-option[data-value="bad"] .rate-emoji-icon { background-image: url('../img/ico_rate_bad.png'); }
.rate-emoji-option[data-value="best"] .rate-emoji-label { color: #3CBFCD; }
.rate-emoji-option[data-value="good"] .rate-emoji-label { color: #3CBF96; }
.rate-emoji-option[data-value="normal"] .rate-emoji-label { color: #FFB751; }
.rate-emoji-option[data-value="bad"] .rate-emoji-label { color: #FF4040; }
.rate-emoji-group:has(input:checked) .rate-emoji-option:not(:has(input:checked)) .rate-emoji-icon { filter: grayscale(1) opacity(0.45); }
.rate-emoji-group:has(input:checked) .rate-emoji-option:not(:has(input:checked)) .rate-emoji-label { color: var(--info); }

/* 2. 평가 항목 (좋았던점/아쉬웠던점) */
.rate-check-cols { display: flex; gap: 80px; flex-wrap: wrap; }
.rate-check-col { display: flex; flex-direction: column; gap: 16px;}
.rate-check-col__title { font-size: 16px; font-weight: 500; color: var(--black); letter-spacing: -0.4px; margin: 0; }
.rate-check-list { display: flex; flex-direction: column; gap: 8px; }
.rate-check-item { display: flex; align-items: center; gap: 8px; font-size: 15px; color: var(--sub); letter-spacing: -0.375px; cursor: pointer; }
.rate-check-item input,
.rate-blacklist-toggle input { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0, 0, 0, 0); }
.rate-checkbox { display: inline-flex; flex: 0 0 auto; width: 24px; height: 24px; background: url('../img/ico_chk_off.svg') no-repeat center / 20px; }
.rate-check-item input:checked ~ .rate-checkbox,
.rate-blacklist-toggle input:checked ~ .rate-checkbox { background-image: url('../img/ico_chk_on.svg'); }
/* 좋았던 점↔아쉬웠던 점 같은 행 상호 disabled (피그마 평가하기 팝업_260624 댓글) */
.rate-check-item.is-disabled { opacity: 0.4; cursor: default; }

/* 3. 블랙리스트 등록 */
.rate-blacklist-toggle { display: flex; align-items: center; gap: 8px; font-size: 14px; color: var(--black); letter-spacing: -0.35px; cursor: pointer; margin-bottom: 16px; }

.rate-modal__label { font-size: 14px; font-weight: 500; color: var(--black); letter-spacing: -0.35px; margin: 0 0 16px; }
.rate-reason-chips { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 16px; }
.rate-reason-chips input { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0, 0, 0, 0); }
.rate-reason-chip { display: inline-flex; align-items: center; justify-content: center; padding: 6px 16px; border: 1px solid var(--line-gray); border-radius: 4px; background: #fff; font-size: 14px; color: var(--sub); letter-spacing: -0.35px; cursor: pointer; white-space: nowrap; }
.rate-reason-chips input:checked + .rate-reason-chip { background: var(--main-80); border-color: var(--main-80); color: var(--white); }

.rate-modal__textarea-wrap { position: relative; margin-bottom: 16px; }
.rate-modal__textarea { width: 100%; height: 72px; border: 1px solid var(--line-gray); border-radius: 10px; padding: 12px 16px; font-size: 14px; color: var(--black); resize: none; font-family: inherit; }
.rate-modal__textarea::placeholder { color: var(--info); }
.rate-modal__counter { position: absolute; right: 16px; bottom: 12px; font-size: 12px; color: var(--info); }

.rate-modal__notice { font-size: 13px; color: var(--info); letter-spacing: -0.325px; text-align: center; margin: 0; }

.rate-modal__submit { display: flex; align-items: center; justify-content: center; width: 100%; height: 56px; margin-top: 40px; border: 0; border-radius: 10px; background: var(--main); color: var(--white); font-size: 18px; font-weight: 600; letter-spacing: -0.45px; cursor: pointer; }
.rate-modal__submit:hover { background: var(--strong-hover); }

/* 블랙리스트 없는 버전 : .rate-modal.no-blacklist 를 overlay에 추가 */
.rate-modal.no-blacklist .rate-blacklist-section,
.rate-modal.no-blacklist .rate-modal__divider--blacklist { display: none; }

@media (max-width: 768px) {
    .rate-modal { align-items: flex-end; background: rgba(17, 17, 17, 0.6); }
    .rate-modal .modal-wrap { width: 100%; max-width: 100%; height: 90vh; max-height: 90vh; border-radius: 20px 20px 0 0; padding: 0; display: flex; flex-direction: column; }
    .rate-modal .modal-close { position: static; }

    .rate-modal__titlebar { display: flex; align-items: center; justify-content: center; height: 56px; flex: 0 0 auto; margin-bottom: 0; border-bottom: 1px solid var(--line-gray); }
    .rate-modal__titlebar .rate-modal__title { font-size: 20px; letter-spacing: -0.5px; }
    .rate-modal__titlebar .rate-modal__subtitle { display: none; }
    .rate-modal .modal-close { position: absolute; right: 20px; top: 16px; width: 24px; height: 24px; }
    .rate-modal__user-row { margin: 12px 20px 0; width: auto; }
    .rate-modal__review-link { display: none; }

    .rate-modal__scroll { flex: 1 1 auto; overflow-y: auto; padding: 0 20px 24px; }

    .rate-modal__divider { margin: 24px 0; }
    .rate-modal__section-title { font-size: 16px; margin-bottom: 16px; }
    .rate-modal__section-head { margin-bottom: 16px; }

    .rate-emoji-group { justify-content: space-between; gap: 8px; }
    .rate-emoji-option { width: 72px; gap: 8px; }
    .rate-emoji-icon { width: 36px; height: 40px; }
    .rate-emoji-label { font-size: 13px; }

    .rate-check-cols { gap: 8px; justify-content: space-between; }
    .rate-check-col { width: 48%; gap: 8px; }
    .rate-check-col__title { font-size: 14px; }
    .rate-check-list { gap: 16px; }
    .rate-check-item { font-size: 13px; gap: 8px; }
    .rate-checkbox { width: 16px; height: 16px; background-size: 16px; }

    .rate-blacklist-toggle { font-size: 12px; }
    .rate-blacklist-toggle .rate-checkbox { width: 16px; height: 16px; background-size: 16px; }
    .rate-modal__label { font-size: 14px; margin-bottom: 16px; }
    .rate-reason-chip { width: calc(50% - 4px); padding: 6px 16px; height: 36px; font-size: 12px; }
    .rate-modal__notice { font-size: 12px; }

    .rate-modal__footer { flex: 0 0 auto; padding: 12px 20px; background: rgba(255, 255, 255, 0.9); backdrop-filter: blur(3px); border-top: 1px solid var(--line-gray); }
    .rate-modal__submit { height: 48px; font-size: 15px; margin-top: 0; }
} 

/* 배너 */
.banner-wrap{position: relative; margin-bottom: 26px; border-radius: 14px; background: #FCF8EF; height: 180px; padding-left: 93px; padding-right: 120px;}
.banner-l{gap: 22px;}
.banner-tit strong{color: var(--black); font-size: 28px; font-weight: 500; line-height: 140%; letter-spacing: -0.7px;}
.banner-tit p{margin-top: 5px; color: var(--sub); font-size: 20px; font-weight: 400; line-height: 140%; letter-spacing: -0.5px;}
.banner-r .guide-btn{width: 320px; height: 56px; font-size: 20px;}
.banner-r .guide-btn .ico-left{margin-left: 16px;}
.banner-wrap .close-btn{position: absolute; top: 16px; right: 24px;}
/* ══════════════════════════════════════════════
   참여자 문의관리 (Figma node 1417:49351)
   ══════════════════════════════════════════════ */

/* ── 색상 토큰 보강 ── */
:root {
    --system-amber-800: #FF8F00;
    --system-grey-50: #F9F9F9;
    --system-blue-tag-bg: #EEF4FF;
    --system-blue-tag-text: #4F7CFF;
}

/* ── 목록 페이지 ── */
.inquiry-manage-notice { margin-bottom: 24px; }
.inquiry-manage-notice .caution-box__hd { color: var(--sub); }

.inquiry-manage-filter { margin-bottom: 24px; }
/* 2차 피드백 ⑭: 드롭다운 너비 — 시안(260821 변경후) 실측 257px 고정·간격 20px (기존 flex 1 1 0 → 468px 과대) */
.inquiry-manage-filter__row { display: flex; gap: 20px; margin-bottom: 16px; }
.inquiry-manage-filter__row .form-field { flex: 0 0 auto; min-width: 0; }
.inquiry-manage-filter__row .form-field .date-range-wrap.combined { width: 257px; gap: 12px; }
.inquiry-manage-filter__row .form-field .select-wrap,
.inquiry-manage-filter__row .form-field .select-wrap .ss-main { width: 257px; }
.inquiry-manage-filter__row--search { align-items: flex-end; justify-content: space-between; margin-bottom: 0; }
/* 2차 피드백 ⑮: 검색 입력창 테두리 — 시안 실측: 너비 534px(1·2열 합) · 라운드 10px · 테두리 line-gray */
.inquiry-manage-filter__search { max-width: 534px; }
/* 3차 피드백 슬라이드13: 검색 인풋박스 높이 48px (기존 내부 input 34px 의존 → 명시 높이) */
.inquiry-manage-filter__search .wrap-input.inner { width: 534px; max-width: 100%; height: 48px; background: var(--white); border: 1px solid var(--line-gray); border-radius: 10px; padding: 0 16px; padding-right: 8px; transition: border-color 0.2s ease; }
.inquiry-manage-filter__actions { display: flex; gap: 8px; flex-shrink: 0; }
.inquiry-manage-filter__actions .btn-comm { height: 48px; padding: 8px 24px; }

.inquiry-tabs { display: flex; align-items: center; gap: 24px; padding: 16px 0; border-bottom: 1px solid var(--regular); margin-bottom: 16px; }
.inquiry-tab { background: none; border: none; padding: 4px 0; font-size: 16px; font-weight: 400; color: var(--sub); letter-spacing: -0.4px; cursor: pointer; position: relative; }
.inquiry-tab span { font-weight: 500; }
.inquiry-tab.active { color: var(--main); font-weight: 500; }
.inquiry-tab.active::after { content: ''; position: absolute; left: 0; right: 0; bottom: -17px; height: 2px; background: var(--main); }

/* 필터·검색 접기 토글 — 모바일 전용 (피그마 체험단 문의관리_MO_260702), PC 숨김 */
.inquiry-filter-toggle { display: none; }

.inquiry-chip { display: inline-flex; align-items: center; justify-content: center; min-width: 72px; padding: 4px 8px; border-radius: 2px; font-size: 15px; font-weight: 500; letter-spacing: -0.375px; }
.inquiry-chip.waiting-confirm { background: var(--system-red-500); color: var(--main); }
.inquiry-chip.waiting { background: var(--system-orange); color: var(--system-amber-800); }
.inquiry-chip.complete { background: var(--system-grey-50); color: var(--disabled); }

.inquiry-manage-table tbody td.is-urgent { color: var(--main); }
.inquiry-manage-row { cursor: pointer; }

.inquiry-manage-total { color: var(--info); font-size: 16px; letter-spacing: -0.4px; }
.inquiry-manage-total strong { color: var(--main); font-weight: 500; }

@media (max-width: 1024px) {
    .inquiry-manage-filter__row { flex-wrap: wrap; gap: 16px; }
    .inquiry-manage-filter__row .form-field { flex: 1 1 calc(50% - 8px); }
    .inquiry-manage-filter__row .form-field .date-range-wrap.combined,
    .inquiry-manage-filter__row .form-field .select-wrap,
    .inquiry-manage-filter__row .form-field .select-wrap .ss-main { width: 100%; }
}

/* ── 목록 모바일 (피그마 체험단 문의관리_MO_260702 — 4x 캡처 실측, 2026-10-15 재작업) ── */
@media (max-width: 768px) {
    /* 레이아웃 순서 재배치(DOM은 PC 기준 유지): 안내 → 탭 → 필터(접이식) → 카드 목록 → 총건수/페이징 */
    .inquiry-manage-page .bbs-board-card.card-item { display: flex; flex-direction: column; background: var(--white); border-radius: 14px; padding: 24px 16px; box-shadow: 6px 6px 54px 0 rgba(0, 0, 0, 0.05); }
    .inquiry-manage-page .inquiry-manage-notice { order: 1; }
    .inquiry-manage-page .inquiry-tabs { order: 2; }
    .inquiry-manage-page .inquiry-manage-filter { order: 3; }
    .inquiry-manage-page .height_auto { order: 4; }
    .inquiry-manage-page .select-table-bottom { order: 5; }

    /* 안내 박스: 연보라 그레이 박스 + 24px 경고 아이콘 (실측 bg #F7F7FB) */
    .inquiry-manage-notice { background: #F7F7FB; border-radius: 12px; padding: 12px 14px; margin-bottom: 24px; }
    .inquiry-manage-notice .caution-box__hd { gap: 10px; font-size: 13px; font-weight: 400; letter-spacing: -0.33px; line-height: 1.45; }

    /* 탭 행: 답변대기(활성 레드+밑줄) / 답변완료 + 우측 필터·검색 토글 */
    .inquiry-tabs { gap: 20px; padding: 0 0 14px; margin-bottom: 16px; border-bottom-color: var(--line-gray); }
    .inquiry-tab { font-size: 15px; letter-spacing: -0.375px; padding: 0; }
    .inquiry-tab.active { font-weight: 600; }
    .inquiry-tab.active::after { bottom: -15px; }
    .inquiry-filter-toggle { display: inline-flex; align-items: center; gap: 4px; margin-left: auto; background: none; border: 0; padding: 0; font-size: 13px; color: var(--sub); letter-spacing: -0.325px; cursor: pointer; }
    .inquiry-filter-toggle .ico-filter-gear { width: 16px; height: 16px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23505050' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3Cpath d='M19.4 15a1.65 1.65 0 0 0 .33 1.82l.06.06a2 2 0 0 1 0 2.83 2 2 0 0 1-2.83 0l-.06-.06a1.65 1.65 0 0 0-1.82-.33 1.65 1.65 0 0 0-1 1.51V21a2 2 0 0 1-2 2 2 2 0 0 1-2-2v-.09A1.65 1.65 0 0 0 9 19.4a1.65 1.65 0 0 0-1.82.33l-.06.06a2 2 0 0 1-2.83 0 2 2 0 0 1 0-2.83l.06-.06a1.65 1.65 0 0 0 .33-1.82 1.65 1.65 0 0 0-1.51-1H3a2 2 0 0 1-2-2 2 2 0 0 1 2-2h.09A1.65 1.65 0 0 0 4.6 9a1.65 1.65 0 0 0-.33-1.82l-.06-.06a2 2 0 0 1 0-2.83 2 2 0 0 1 2.83 0l.06.06a1.65 1.65 0 0 0 1.82.33H9a1.65 1.65 0 0 0 1-1.51V3a2 2 0 0 1 2-2 2 2 0 0 1 2 2v.09a1.65 1.65 0 0 0 1 1.51 1.65 1.65 0 0 0 1.82-.33l.06-.06a2 2 0 0 1 2.83 0 2 2 0 0 1 0 2.83l-.06.06a1.65 1.65 0 0 0-.33 1.82V9a1.65 1.65 0 0 0 1.51 1H21a2 2 0 0 1 2 2 2 2 0 0 1-2 2h-.09a1.65 1.65 0 0 0-1.51 1z'/%3E%3C/svg%3E") no-repeat center / contain; }
    .inquiry-filter-toggle .ico-toggle-arrow { width: 16px; height: 16px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23505050' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 6.5 8 10.5 12 6.5'/%3E%3C/svg%3E") no-repeat center / contain; transition: transform 0.3s ease; }
    .inquiry-filter-toggle.is-open .ico-toggle-arrow { transform: rotate(180deg); }

    /* 필터 영역: 기본 접힘 → 토글 시 펼침 (공통 모션 관례 max-height 전환)
       — .ss-form 모바일 공통(흰 박스+그림자+패딩)은 이 화면에선 메인 패널 내부라 해제 */
    .inquiry-manage-filter { background: transparent; box-shadow: none; border-radius: 0; padding: 0; gap: 0; overflow: hidden; max-height: 0; opacity: 0; margin-bottom: 0; transition: max-height 0.3s ease, opacity 0.3s ease, margin-bottom 0.3s ease; }
    .inquiry-manage-filter.is-open { max-height: 520px; opacity: 1; margin-bottom: 20px; }
    .inquiry-manage-filter__row { flex-wrap: wrap; gap: 12px; margin-bottom: 12px; }
    .inquiry-manage-filter__row .form-field:first-child { flex: 1 1 100%; }
    .inquiry-manage-filter__row .form-field { flex: 1 1 calc(50% - 6px); }
    .inquiry-manage-filter__row--search { flex-direction: column; align-items: stretch; gap: 12px; }
    .inquiry-manage-filter__search { max-width: 100%; }
    .inquiry-manage-filter__search .wrap-input.inner { width: 100%; height: 44px; }
    .inquiry-manage-filter__actions .btn-comm { flex: 1 1 0; height: 44px; padding: 8px 16px; font-size: 14px; }

    /* 카드 목록: 흰 카드 radius 14 / 확인요청(긴급)은 연핑크 (실측: 테두리 #E6E8EB, 긴급 bg #FFF9F9) */
    .inquiry-manage-table colgroup,
    .inquiry-manage-table thead { display: none; }
    .inquiry-manage-table, .inquiry-manage-table tbody { display: block; width: auto; }
    .inquiry-manage-table .inquiry-manage-row { display: flex; flex-wrap: wrap; align-items: center; position: relative; padding: 16px; border: 1px solid #E6E8EB; border-radius: 14px; margin-bottom: 16px; background: var(--white); }
    .inquiry-manage-table .inquiry-manage-row.is-urgent-row { background: #FFF9F9; }
    .inquiry-manage-table tbody tr:last-child.inquiry-manage-row { margin-bottom: 0; }
    .bbs-table.inquiry-manage-table .inquiry-manage-row td { display: block; width: auto; padding: 0; border-bottom: 0; height: auto; min-height: 0; text-align: left; overflow: visible; }
    /* 1행: 상태 뱃지 + 문의유형 */
    .bbs-table.inquiry-manage-table .inquiry-manage-row td[data-label="상태"] { order: 1; margin-right: 10px; }
    .inquiry-manage-table .inquiry-chip { min-width: 0; padding: 3px 6px; border-radius: 4px; font-size: 12px; letter-spacing: -0.3px; }
    .inquiry-manage-table .inquiry-chip.waiting { color: #EF6C00; }
    .bbs-table.inquiry-manage-table .inquiry-manage-row td[data-label="문의유형"] { order: 2; font-size: 13px; color: var(--info); letter-spacing: -0.325px; }
    /* 2행: [캠페인명] 체험단명 */
    .bbs-table.inquiry-manage-table .inquiry-manage-row td[data-label="캠페인명"] { order: 3; width: 100%; margin-top: 16px; font-size: 13px; font-weight: 400; color: var(--info); letter-spacing: -0.325px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
    /* 3행: 제목 1줄 말줄임 + 우측 > */
    .bbs-table.inquiry-manage-table .inquiry-manage-row td[data-label="제목"] { order: 4; width: 100%; margin-top: 6px; position: relative; padding-right: 32px; font-size: 15px; font-weight: 600; color: var(--black); letter-spacing: -0.375px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
    .bbs-table.inquiry-manage-table .inquiry-manage-row td[data-label="제목"]::after { content: ''; position: absolute; right: 0; top: 50%; transform: translateY(-50%); width: 24px; height: 24px; background: url('../img/ico_arrow_right.svg') no-repeat center / contain; }
    /* 4행: 작성자 + 문의일시 (긴급은 레드) */
    .bbs-table.inquiry-manage-table .inquiry-manage-row td[data-label="문의자"],
    .bbs-table.inquiry-manage-table .inquiry-manage-row td[data-label="문의일시"] { display: inline-flex; align-items: center; gap: 6px; margin-top: 16px; font-size: 13px; color: var(--info); letter-spacing: -0.325px; }
    .bbs-table.inquiry-manage-table .inquiry-manage-row td[data-label="문의자"] { order: 5; margin-right: 16px; }
    .bbs-table.inquiry-manage-table .inquiry-manage-row td[data-label="문의일시"] { order: 6; }
    .bbs-table.inquiry-manage-table .inquiry-manage-row td[data-label="문의일시"].is-urgent { color: var(--main); }
    /* min-width/margin 0: .bbs-table tbody td::before 공통(60px 라벨용) 해제 */
    .bbs-table.inquiry-manage-table .inquiry-manage-row td[data-label="문의자"]::before,
    .bbs-table.inquiry-manage-table .inquiry-manage-row td[data-label="문의일시"]::before { min-width: 0; margin-right: 0; }
    .bbs-table.inquiry-manage-table .inquiry-manage-row td[data-label="문의자"]::before { content: ''; width: 16px; height: 16px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 14' fill='none' stroke='%23545461' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 7.583c1.611 0 2.917-1.306 2.917-2.916C9.917 3.056 8.611 1.75 7 1.75S4.083 3.056 4.083 4.667C4.083 6.277 5.389 7.583 7 7.583Z'/%3E%3Cpath d='M11.667 12.25c0-1.238-.492-2.425-1.367-3.3A4.665 4.665 0 0 0 7 7.583c-1.238 0-2.425.492-3.3 1.367a4.665 4.665 0 0 0-1.367 3.3'/%3E%3C/svg%3E") no-repeat center / contain; }
    .bbs-table.inquiry-manage-table .inquiry-manage-row td[data-label="문의일시"]::before { content: ''; width: 16px; height: 16px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23545461' stroke-width='1.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='8' cy='8.7' r='5.3'/%3E%3Cpath d='M8 6.2v2.7l1.8 1.1'/%3E%3Cpath d='M3.6 2.4 2 3.9M12.4 2.4 14 3.9'/%3E%3C/svg%3E") no-repeat center / contain; }
    /* 답변일시는 모바일 카드 미노출 (시안 — 답변완료 카드도 문의일시만 표기) */
    .bbs-table.inquiry-manage-table .inquiry-manage-row td[data-label="답변일시"] { display: none; }
    /* 내역 없음 행 */
    .inquiry-manage-table tbody tr:not(.inquiry-manage-row) { display: block; }
    .inquiry-manage-table tbody tr:not(.inquiry-manage-row) td { display: block; width: 100%; border-bottom: 0; }

    /* 총 건수 + 페이지네이션: 세로 배치, 페이징 좌측 정렬 (시안) */
    .inquiry-manage-page .select-table-bottom.jc-between { flex-direction: column; align-items: flex-start; gap: 20px; margin-top: 4px; }
    .inquiry-manage-page .select-table-bottom.jc-between .pagination-wrap { justify-content: flex-start; }
    .inquiry-manage-total { font-size: 14px; letter-spacing: -0.35px; }
}

/* ── 상세 페이지 ── */
.inquiry-detail-card { padding: 32px 40px; }
.inquiry-detail-head { display: flex; align-items: center; gap: 16px; margin-bottom: 8px; }
.inquiry-detail-title { font-size: 24px; font-weight: 500; color: var(--black); letter-spacing: -0.6px; }
.inquiry-detail-meta { display: flex; align-items: center; gap: 8px; margin-bottom: 24px; }
.inquiry-detail-writer { display: inline-flex; align-items: center; gap: 4px; color: var(--sub); font-size: 16px; letter-spacing: -0.4px; }
.inquiry-detail-writer .ico { width: 16px; height: 16px; }
.inquiry-type-tag { display: inline-flex; align-items: center; padding: 4px 8px; border-radius: 2px; background: var(--system-blue-tag-bg); color: var(--system-blue-tag-text); font-size: 16px; letter-spacing: -0.4px; }

.inquiry-hr { height: 1px; background: var(--regular); margin: 40px 0; }

.inquiry-section + .inquiry-section { margin-top: 0; }
.inquiry-section__title { font-size: 20px; font-weight: 500; color: var(--black); letter-spacing: -0.5px; margin-bottom: 16px; }
.inquiry-section__title-row { display: flex; align-items: center; gap: 16px; margin-bottom: 16px; }
.inquiry-section__title-row .inquiry-section__title { margin-bottom: 0; }
.inquiry-section__desc { color: var(--info); font-size: 16px; letter-spacing: -0.4px; }

.inquiry-collapse-toggle { display: inline-flex; align-items: center; gap: 4px; background: none; border: none; cursor: pointer; padding: 0; }
.inquiry-collapse-toggle .ico { transition: transform 0.2s ease; }
.inquiry-collapse-toggle.is-collapsed .ico { transform: rotate(180deg); }

.inquiry-info-card { display: flex; align-items: stretch; gap: 32px; padding: 16px 32px; border: 1px solid var(--line-gray); border-radius: 14px; background: var(--white); }
.inquiry-info-col { flex: 1 1 0; min-width: 0; margin: 0; }
.inquiry-info-divider { width: 1px; background: var(--line-gray); flex-shrink: 0; }
.inquiry-info-row { display: flex; align-items: center; gap: 40px; padding: 8px; }
.inquiry-info-row dt { display: inline-flex; align-items: center; gap: 4px; width: 90px; flex-shrink: 0; color: var(--sub); font-size: 16px; letter-spacing: -0.4px; font-weight: 400; }
.inquiry-info-row dt .ico { width: 16px; height: 16px; }
.inquiry-info-row dd { margin: 0; color: var(--black); font-size: 16px; letter-spacing: -0.4px; }

.inquiry-content-card { display: flex; flex-direction: column; gap: 32px; padding: 32px; border: 1px solid #DADDE5; border-radius: 14px; background: #FCFCFD; }
.inquiry-content-row { display: flex; align-items: flex-start; gap: 40px; }
.inquiry-content-label { display: inline-flex; align-items: center; gap: 8px; width: 104px; flex-shrink: 0; color: var(--sub); font-size: 16px; letter-spacing: -0.4px; }
.inquiry-content-label::before { content: ''; width: 2px; height: 2px; border-radius: 50%; background: var(--sub); }
.inquiry-content-value { margin: 0; color: var(--black); font-size: 16px; letter-spacing: -0.4px; line-height: 1.4; }
.inquiry-content-value p { margin: 0; }

.inquiry-file-list { display: flex; flex-wrap: wrap; gap: 16px; }
.inquiry-file { display: flex; align-items: center; gap: 8px; width: 213px; padding: 8px; border: 1px solid var(--line-gray); border-radius: 4px; background: var(--white); }
.inquiry-file__thumb { width: 40px; height: 40px; border-radius: 4px; overflow: hidden; flex-shrink: 0; }
.inquiry-file__thumb img { width: 100%; height: 100%; object-fit: cover; }
.inquiry-file__meta { flex: 1 1 0; min-width: 0; }
.inquiry-file__meta p { margin: 0; color: var(--sub); font-size: 13px; letter-spacing: -0.325px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.inquiry-file__meta span { color: var(--info); font-size: 12px; letter-spacing: -0.3px; }
.inquiry-file .ico { flex-shrink: 0; cursor: pointer; }

.inquiry-answer-textarea { position: relative; width: 100%; }
.inquiry-answer-textarea .form-control--textarea { width: 100%; height: 180px; padding: 32px; border-radius: 14px; white-space: pre-line; }
.inquiry-answer-textarea .inquiry-count { position: absolute; right: 16px; bottom: 12px; }

.inquiry-extend-check { margin-bottom: 8px; }
.inquiry-extend-check label { font-size: 18px; letter-spacing: -0.45px; color: var(--black); }
.inquiry-extend-card { margin-top: 16px; display: flex; flex-direction: column; gap: 16px; padding: 24px 32px; border: 1px solid var(--line-gray); border-radius: 14px; background: var(--white); }

.inquiry-detail-actions { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.inquiry-cancel-link { display: flex; align-items: center; gap: 16px; }
.inquiry-cancel-link span { display: inline-flex; align-items: center; gap: 8px; color: var(--sub); font-size: 15px; letter-spacing: -0.375px; }
.inquiry-cancel-link span .ico { width: 16px; height: 16px; }
.inquiry-cancel-link button { display: inline-flex; align-items: center; gap: 4px; padding: 6px 16px; border: 1px solid var(--line-gray); border-radius: 4px; background: var(--white); color: var(--sub); font-size: 13px; letter-spacing: -0.325px; cursor: pointer; }
.inquiry-cancel-link button .ico { width: 16px; height: 16px; }
.inquiry-submit-btn { min-width: 248px; height: 48px; }

@media (max-width: 1024px) {
    .inquiry-detail-card { padding: 24px; }
    .inquiry-info-card { flex-direction: column; gap: 16px; }
    .inquiry-info-divider { width: 100%; height: 1px; }
    .review-extend-date-row { flex-wrap: wrap; }
    .review-extend-date-row .cancel-request-field { flex: 1 1 45%; }
}

@media (max-width: 768px) {
    .inquiry-detail-card { padding: 20px 16px; }
    .inquiry-detail-head { flex-wrap: wrap; gap: 8px; margin-bottom: 12px; }
    .inquiry-detail-title { font-size: 18px; }
    .inquiry-detail-meta { margin-bottom: 20px; }
    .inquiry-hr { margin: 24px 0; }
    .inquiry-section__title { font-size: 16px; }
    .inquiry-section__title-row { flex-direction: column; align-items: flex-start; gap: 4px; }
    .inquiry-info-card { padding: 16px; }
    .inquiry-info-row { flex-direction: column; align-items: flex-start; gap: 4px; padding: 8px 0; }
    .inquiry-info-row dt { width: auto; }
    .inquiry-content-card { padding: 16px; gap: 20px; }
    .inquiry-content-row { flex-direction: column; gap: 8px; }
    .inquiry-content-label { width: auto; }
    .inquiry-file { width: 100%; }
    .inquiry-answer-textarea .form-control--textarea { height: 140px; padding: 16px; }
    .inquiry-extend-card { padding: 16px; }
    .review-extend-date-row { flex-direction: column; gap: 16px; }
    .inquiry-detail-actions { flex-direction: column; align-items: stretch; gap: 16px; }
    .inquiry-cancel-link { justify-content: space-between; }
    .inquiry-submit-btn { width: 100%; min-width: 0; }
}

/* ── 참여 취소 검토 요청 모달 (문의관리 상세) — 바텀시트 ── */
@media (max-width: 768px) {
    #inquiryCancelReviewModal { align-items: flex-end; }
    #inquiryCancelReviewModal .modal-wrap--wide { width: 100%; max-width: 100%; height: 90vh; max-height: 90vh; border-radius: 20px 20px 0 0; padding: 0; display: flex; flex-direction: column; overflow: hidden; }
    #inquiryCancelReviewModal .modal-header { height: 56px; padding: 0; flex: 0 0 auto; display: flex; align-items: center; justify-content: center; border-bottom: 1px solid var(--line-gray); }
    #inquiryCancelReviewModal .modal-title-text { font-size: 20px; letter-spacing: -0.5px; }
    #inquiryCancelReviewModal .modal-close { position: absolute; right: 20px; top: 16px; width: 24px; height: 24px; }
    #inquiryCancelReviewModal .modal-close .ico { width: 24px; height: 24px; }
    #inquiryCancelReviewModal .modal-content { flex: 1 1 auto; min-height: 0; display: flex; flex-direction: column; gap: 0; }
    #inquiryCancelReviewModal .modal-body { flex: 1 1 auto; min-height: 0; overflow-y: auto; padding: 12px 20px 24px; }
    #inquiryCancelReviewModal .cancel-request-body { gap: 24px; }
    #inquiryCancelReviewModal .cancel-request-desc { font-size: 13px; }
    #inquiryCancelReviewModal .caution-box.type2 { padding: 8px; }
    #inquiryCancelReviewModal .caution-box__text strong,
    #inquiryCancelReviewModal .caution-box__text p,
    #inquiryCancelReviewModal .caution-box.type2 .caution-box__hd { font-size: 13px; }
    #inquiryCancelReviewModal .cancel-request-info { padding: 0 8px; }
    #inquiryCancelReviewModal .cancel-request-info__row { gap: 8px; padding: 8px; }
    #inquiryCancelReviewModal .cancel-request-info__label { width: 68px; font-size: 13px; }
    #inquiryCancelReviewModal .cancel-request-info__value { font-size: 13px; }
    #inquiryCancelReviewModal .cancel-request-field .form-label { font-size: 14px; margin-bottom: 12px; }
    #inquiryCancelReviewModal .select-wrap,
    #inquiryCancelReviewModal .select-wrap .ss-main { height: 36px; --ss-main-height: 36px; }
    #inquiryCancelReviewModal .select-wrap .ss-main .ss-values .ss-single,
    #inquiryCancelReviewModal .select-wrap .ss-main .ss-values .ss-placeholder { line-height: 36px; font-size: 13px; }
    #inquiryCancelReviewModal .check-area .label-check input[type=radio] ~ label { font-size: 13px; }
    #inquiryCancelReviewModal .cancel-request-field .wrap-input .form-control--textarea { height: 96px; }
    #inquiryCancelReviewModal .modal-footer { flex: 0 0 auto; margin: 0; padding: 12px 20px; gap: 16px; background: rgba(255, 255, 255, 0.9); backdrop-filter: blur(3px); border-top: 1px solid var(--line-gray); }
    #inquiryCancelReviewModal .modal-btn-cancel,
    #inquiryCancelReviewModal .modal-btn-confirm { flex: 1 1 0; width: auto; min-width: 0; height: 48px; font-size: 15px; }
}

/* ══════════════════════════════════════════════
   이용가이드 모달 (Figma node 1383:78256)
   3차 피드백 s32: 제목/목차/콘텐츠 전면 재정합 — 이용가이드 시안(2403:93836) 기준
   (Figma API 429(Retry-After 4.5일) → PPT 수정요청서 시안 캡처를 모달폭 1120px 환산 실측)
   ══════════════════════════════════════════════ */
.guide-modal .modal-wrap { padding: 0; }
.guide-modal__wrap { width: 1120px; max-width: calc(100% - 32px); height: 86vh; max-height: 860px; border-radius: 20px; display: flex; flex-direction: row; align-items: stretch; position: relative; overflow: hidden; }
.guide-modal__close { position: absolute; right: 20px; top: 20px; z-index: 2; }

/* s32 ②: 사이드바 216px (2차의 185px는 구시안 기준) · 칩 블랙 · 타이틀 24px */
.guide-modal__sidebar { width: 216px; flex: 0 0 216px; background: var(--white); border-right: 1px solid var(--line-gray); overflow-y: auto; padding-bottom: 32px; }
.guide-modal__brand { display: flex; flex-direction: column; align-items: center; gap: 6px; padding: 28px 16px 0; text-align: center; }
.guide-modal__chip { display: inline-flex; align-items: center; padding: 3px 12px; border-radius: 999px; background: var(--black); color: var(--white); font-size: 12px; font-weight: 500; letter-spacing: -0.3px; }
.guide-modal__title { margin: 0; color: var(--black); font-size: 24px; font-weight: 700; letter-spacing: -0.6px; }

.guide-modal__mascot { display: flex; align-items: center; gap: 4px; padding: 24px 10px 0 16px; }
.guide-modal__mascot img { width: 66px; height: auto; flex-shrink: 0; }
.guide-modal__mascot-bubble { position: relative; background: var(--main); color: var(--white); font-size: 12px; font-weight: 500; line-height: 1.45; letter-spacing: -0.3px; padding: 7px 12px; border-radius: 10px; white-space: nowrap; }
.guide-modal__mascot-bubble::before { content: ''; position: absolute; left: -4px; top: 50%; transform: translateY(-50%); width: 0; height: 0; border-style: solid; border-width: 4px 5px 4px 0; border-color: transparent var(--main) transparent transparent; }

/* s32 ②: 목차 — 서클 18px·카테고리 15px·서브 14px·상시 회색 불릿 10px + 불릿 연결선 */
.guide-toc { display: flex; flex-direction: column; padding-top: 16px; }
.guide-toc__group { padding-bottom: 8px; }
.guide-toc__cat { width: 100%; display: flex; align-items: center; gap: 6px; padding: 5px 16px 5px 25px; background: none; border: none; cursor: pointer; text-align: left; color: var(--sub); font-size: 15px; line-height: 19px; font-weight: 600; letter-spacing: -0.375px; }
.guide-toc__num { display: inline-flex; align-items: center; justify-content: center; width: 18px; height: 18px; border-radius: 50%; background: #A5A5AD; color: var(--white); font-size: 10px; font-weight: 500; font-style: normal; flex-shrink: 0; }
.guide-toc__list { list-style: none; margin: 0; padding: 0 12px 0 62px; display: flex; flex-direction: column; position: relative; }
.guide-toc__list::before { content: ''; position: absolute; left: 33px; top: 14px; bottom: 14px; width: 2px; background: var(--line-gray); }
.guide-toc__list:not(:has(li + li))::before { display: none; }
.guide-toc__sub { position: relative; width: 100%; display: block; text-align: left; background: none; border: none; cursor: pointer; padding: 5px 0; color: var(--info); font-size: 14px; line-height: 19px; letter-spacing: -0.35px; }
.guide-toc__sub::before { content: ''; position: absolute; left: -33px; top: 50%; transform: translateY(-50%); width: 10px; height: 10px; border-radius: 50%; background: var(--line-gray); }

.guide-toc__group.is-active .guide-toc__cat { color: var(--black); }
.guide-toc__group.is-active .guide-toc__num { background: var(--main); }
.guide-toc__sub.is-active { color: var(--main); font-weight: 500; }
.guide-toc__sub.is-active::before { background: var(--main); }

/* s32 ③: 콘텐츠 — 카테고리 제목 없이 스텝부터 시작, 이미지는 프레임(테두리/그림자) 없이 원본 크기 */
.guide-modal__content { flex: 1 1 0; min-width: 0; overflow-y: auto; padding: 56px 64px; scroll-behavior: smooth; }
.guide-cat { padding-bottom: 40px; }
.guide-cat + .guide-cat { border-top: 1px solid var(--regular); padding-top: 40px; }

.guide-step { display: flex; align-items: center; gap: 40px; }
.guide-step__media { flex: 0 0 400px; width: 400px; display: flex; align-items: center; justify-content: center; }
.guide-step__media img { display: block; width: auto; max-width: 100%; height: auto; }
.guide-step__body { flex: 1 1 0; min-width: 0; display: flex; flex-direction: column; gap: 16px; }
.guide-step__badge { display: inline-flex; align-items: center; padding: 3px 10px; border-radius: 6px; background: var(--black); color: var(--white); font-size: 11px; font-weight: 500; letter-spacing: -0.275px; width: fit-content; }
.guide-step__body h3 { margin: 0; color: var(--black); font-size: 20px; font-weight: 700; letter-spacing: -0.5px; }
.guide-step__body p { margin: 0; color: var(--sub); font-size: 15px; line-height: 1.6; letter-spacing: -0.375px; }
.guide-step__body .guide-step__callout { color: var(--system-blue-A400, #2962ff); font-weight: 500; }
.guide-step__inline-tip { display: flex; align-items: flex-start; gap: 4px; }
.guide-step__inline-tip .tag { display: inline-flex; align-items: center; padding: 0 8px; height: 18px; border-radius: 999px; background: var(--system-blue-A400, #2962ff); color: var(--white); font-size: 10px; font-weight: 500; letter-spacing: -0.25px; flex-shrink: 0; }
.guide-step__notes { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }
.guide-step__notes li { display: flex; align-items: center; gap: 8px; color: var(--sub); font-size: 15px; letter-spacing: -0.375px; }
.guide-step__notes li::before { content: ''; width: 20px; height: 20px; flex-shrink: 0; background: url('../img/ico_guide_check.svg') center / contain no-repeat; }

.guide-step__divider { display: flex; align-items: center; justify-content: center; padding: 24px 0; color: var(--disabled); }
.guide-step__divider .ico { width: 26px; height: 26px; box-sizing: border-box; border: 1px solid var(--line-gray); border-radius: 50%; background-color: var(--white); background-size: 14px; background-position: center; background-repeat: no-repeat; }

/* s32 ③: 팁 박스 — 이미지 자체에 배경/라운드 포함, 래퍼 스타일 제거 */
.guide-tip-box { margin-top: 32px; display: flex; justify-content: center; }
.guide-tip-box img { display: block; width: 100%; max-width: 665px; height: auto; }

@media (max-width: 1024px) {
    .guide-modal__wrap { width: calc(100% - 32px); height: 90vh; max-height: none; }
    .guide-step { flex-direction: column; align-items: stretch; gap: 16px; }
    .guide-step__media { width: 100%; flex: none; }
}

@media (max-width: 768px) {
    .guide-modal { align-items: flex-end; }
    .guide-modal__wrap { width: 100%; max-width: 100%; height: 92vh; border-radius: 20px 20px 0 0; flex-direction: column; }
    .guide-modal__sidebar { width: 100%; flex: 0 0 auto; border-right: 0; border-bottom: 1px solid var(--line-gray); max-height: 30vh; }
    .guide-modal__brand { padding: 20px 16px 12px; }
    .guide-modal__mascot { display: none; }
    .guide-toc { flex-direction: row; flex-wrap: nowrap; overflow-x: auto; border-top: 1px solid var(--regular); padding-top: 0; }
    .guide-toc__group { border-top: 0; flex: 0 0 auto; }
    .guide-toc__group + .guide-toc__group { border-left: 1px solid var(--regular); }
    .guide-toc__list { display: none; }
    .guide-toc__cat { white-space: nowrap; }
    .guide-modal__content { padding: 24px 16px 40px; }
    .guide-cat + .guide-cat { padding-top: 24px; }
    .guide-step__body h3 { font-size: 16px; }
    .guide-tip-box { margin-top: 24px; }
}

/* ────────────────────────────────────────────
   공지사항 상세 (noticeDetail.html — 2026-10-11 신설)
   목록(bbsList.html) 행 클릭 시 새 탭으로 진입하는 상세 화면
   ──────────────────────────────────────────── */
.height_full .notice-detail-card.bbs-board-card { height: auto; min-height: 880px; padding: 40px 52px; }
.notice-detail-head { display: flex; flex-direction: column; gap: 12px; padding-bottom: 24px; border-bottom: 1px solid var(--regular); }
.notice-detail-title-row { display: flex; align-items: center; gap: 12px; }
.notice-detail-title { color: var(--black); font-size: 20px; font-weight: 600; line-height: 140%; letter-spacing: -0.5px; }
.notice-detail-date { color: var(--info); font-size: 14px; font-weight: 400; line-height: 145%; letter-spacing: -0.35px; }
.notice-detail-content { padding: 32px 0; color: var(--black); font-size: 15px; font-weight: 400; line-height: 160%; letter-spacing: -0.375px; word-break: break-word; }
.notice-detail-content img { max-width: 100%; height: auto; }
/* 구분 뱃지 (상세 화면용 — 공지/이벤트/점검/지원금, AMZ044 코드 뒷자리 기준) */
.notice-detail-page .notice-type-badge { display: inline-flex; align-items: center; flex-shrink: 0; padding: 2px 10px; border-radius: 99px; font-size: 12px; font-weight: 500; line-height: 1.6; white-space: nowrap; background: #f1f2f4; color: #555; }
.notice-detail-page .notice-type-badge.notice-type-001 { background: #fdeaea; color: #ef3739; }
.notice-detail-page .notice-type-badge.notice-type-002 { background: #e8f0fe; color: #2563eb; }
.notice-detail-page .notice-type-badge.notice-type-003 { background: #f1f2f4; color: #555; }
.notice-detail-page .notice-type-badge.notice-type-004 { background: #e8f7ee; color: #16a34a; }

@media (max-width: 768px) {
    /* 모바일: 페이지 타이틀은 숨기고 [목록] 버튼만 노출 (campaignDetail .detail-wrap 모바일 패턴과 동일) */
    .notice-detail-page .page-title_wrap.type2 { display: flex; justify-content: flex-end; align-items: center; margin-bottom: 12px; }
    .notice-detail-page .page-title_wrap.type2 .page-title { display: none; }
    .notice-detail-page .page-title_wrap.type2 .list-btn { background: #fff; border: 1px solid #E5E5EC; border-radius: 8px; padding: 8px 16px; font-size: 13px; color: #505050; letter-spacing: -0.325px; display: inline-flex; align-items: center; gap: 4px; cursor: pointer; min-height: 0; height: auto; }
    .height_full .notice-detail-card.bbs-board-card { min-height: 0; padding: 20px 16px; background: var(--white); box-shadow: 6px 6px 54px 0 rgba(0, 0, 0, 0.05); border-radius: 14px; }
    .notice-detail-head { gap: 8px; padding-bottom: 16px; }
    .notice-detail-title-row { align-items: flex-start; gap: 8px; }
    .notice-detail-title { font-size: 16px; }
    .notice-detail-date { font-size: 13px; }
    .notice-detail-content { padding: 20px 0; font-size: 14px; }
}
