@charset "UTF-8";
/* ============================================================
 * 내점수 학과찾기(4년제) compare.php 전용 디자인 (2026-10-11, 목업 A안)
 * - 모든 규칙은 body.cmpf-v2 안에서만 적용 → 전문대·대학별 내 위치 등 compare.css 를 함께 쓰는 화면에는 영향 없음
 * - 디자인만 바꾼다. 동작은 compare.js · grade-bar-chart.js 그대로
 * ============================================================ */
body.cmpf-v2{--cf-blue:#006fff; --cf-fill:#006fff; --cf-blue-d:#0057cc; --cf-blue-l:#eaf2ff; --cf-blue-m:#bcd6ff; --cf-navy:#1e3a5f; --cf-navy-line:#3a5578; --cf-navy-num:#0b3d91; --cf-icon:#8fc0ff;
    --cf-ink:#202020; --cf-ink2:#4b5563; --cf-mut:#6b7280; --cf-line:#d6dce6; --cf-line2:#e8ecf2; --cf-bg:#f5f7fa; --cf-red:#e03131}

/* ── 단계 상자: 한 상자 안 두 줄 (왼쪽 단계 이름) ── */
body.cmpf-v2 .filter-sec{margin-top:3rem; border:1px solid var(--cf-line); border-radius:0.4rem; counter-reset:cfstep; background:#fff}
body.cmpf-v2 .filter-step{display:grid; grid-template-columns:15rem minmax(0,1fr); column-gap:0; row-gap:0; margin:0; padding:0 1.6rem 1.6rem 0; background:linear-gradient(90deg,var(--cf-bg) 0 calc(15rem - 1px),var(--cf-line2) calc(15rem - 1px) 15rem,#fff 15rem); border:0; border-bottom:1px solid var(--cf-line2); border-radius:0; box-shadow:none; counter-increment:cfstep}
body.cmpf-v2 .filter-step:last-child{border-bottom:0}
body.cmpf-v2 .filter-step > *{grid-column:2; min-width:0}
body.cmpf-v2 .filter-step .filter-step-top{display:contents}
body.cmpf-v2 .filter-step .filter-step-top .step-tit{grid-column:1; grid-row:1 / span 6; align-self:stretch; margin:0; padding:1.6rem; background:none; border-right:0; font-family:'PretendardGOV', sans-serif; font-size:1.4rem; font-weight:700; color:var(--cf-ink); letter-spacing:-0.02rem; line-height:1.5; white-space:nowrap}
body.cmpf-v2 .filter-step .filter-step-top .step-tit::before{content:counter(cfstep); display:inline-flex; align-items:center; justify-content:center; width:2.2rem; height:2.2rem; margin-right:0.8rem; background:var(--cf-ink); color:#fff; border-radius:0.3rem; font-size:1.3rem; vertical-align:0.1rem}
body.cmpf-v2 .filter-step .filter-step-top .step-tit strong{font-weight:700; color:var(--cf-ink)}
body.cmpf-v2 .filter-step > *:not(.filter-step-top){margin-left:1.6rem; margin-top:1.4rem}
/* 지역 단추: 각진 칸, 그림자 없음 */
body.cmpf-v2 .filter-step .filter-grid{display:flex; flex-wrap:wrap; gap:0.6rem}
body.cmpf-v2 #regionGrid,
body.cmpf-v2 #univRegionGrid{display:grid; grid-template-columns:repeat(auto-fill, minmax(7.5rem, 1fr)); gap:1rem}   /* 지역 단추: 4개년 수시입결과 같게 같은 폭 칸으로 (2026-10-13) */
body.cmpf-v2 #regionGrid .filter-item, body.cmpf-v2 #univRegionGrid .filter-item{width:95%; justify-self:start}   /* 지역 단추 가로폭 5% 줄임 — 칸 수·줄 수는 그대로 (2026-10-13) */
body.cmpf-v2 .filter-step .filter-grid .filter-item{min-height:3.8rem; padding:0.6rem 1.3rem; color:var(--cf-ink); font-size:1.3rem; font-weight:400; background:#fff; border:1px solid var(--cf-line); border-radius:0.4rem; box-shadow:none; transition:none}
body.cmpf-v2 .filter-step .filter-grid .filter-item:hover{color:var(--cf-blue); border-color:var(--cf-blue); background:#fff}
body.cmpf-v2 .filter-step .filter-grid .filter-item.selected{color:#fff; font-weight:700; background:var(--cf-fill); border-color:var(--cf-fill); box-shadow:none}
body.cmpf-v2 .filter-step .filter-grid .filter-item.disabled,
body.cmpf-v2 .filter-step .filter-grid .filter-item:disabled{color:#9aa3ae; background:#f3f5f8; border-color:var(--cf-line2)}

/* ── 학과 검색칸 ── */
body.cmpf-v2 .cmp-search-box{max-width:72rem}
body.cmpf-v2 .cmp-search-input{height:4.8rem; padding:0 0.6rem 0 0; border:1px solid var(--cf-line); border-radius:0.4rem; box-shadow:none; transition:none}
body.cmpf-v2 .cmp-search-input:focus-within{border-color:var(--cf-blue); box-shadow:inset 0 0 0 1px var(--cf-blue)}
body.cmpf-v2 .cmp-search-input i{left:1.4rem; font-size:1.8rem; color:var(--cf-ink2)}
body.cmpf-v2 .cmp-search-input input{padding:0 1rem 0 4.4rem; font-size:1.6rem; font-weight:500; letter-spacing:0}
body.cmpf-v2 .cmp-search-input input::placeholder{color:var(--cf-mut); font-size:inherit}
body.cmpf-v2 input::placeholder{font-size:inherit}   /* 입력칸 안내 문구 = 그 칸의 입력 글자 크기 (2026-10-12) */
body.cmpf-v2 .cmp-tag-clear-btn{position:static; flex:none; height:3.4rem; padding:0 1.2rem; color:var(--cf-ink2); font-size:1.4rem; font-weight:600; background:#fff; border:1px solid var(--cf-line); border-radius:0.3rem}
body.cmpf-v2 .cmp-tag-clear-btn:hover{color:var(--cf-red); border-color:var(--cf-red); background:#fff}
body.cmpf-v2 .cmp-tag-clear-btn.hidden{display:none}
body.cmpf-v2 .cmp-search-guide{gap:0.8rem; margin-top:1rem; padding:1rem 1.2rem; background:var(--cf-bg); border:1px solid var(--cf-line2); border-radius:0.4rem; font-size:1.3rem; line-height:1.7; color:var(--cf-ink2)}
body.cmpf-v2 .cmp-search-guide i{font-size:1.6rem; color:#b7791f; line-height:1.5}
body.cmpf-v2 .cmp-search-guide b{color:var(--cf-ink)}

/* ── 학과 검색 목록 ── */
body.cmpf-v2 .cmp-search-dropdown{border:1px solid var(--cf-ink); border-radius:0.4rem; box-shadow:0 0.4rem 1.2rem rgba(0,0,0,0.1)}
body.cmpf-v2 .cmp-search-dropdown .dd-head{padding:1.1rem 1.4rem; background:var(--cf-navy)}
body.cmpf-v2 .cmp-search-dropdown .dd-total{font-size:1.4rem; color:#fff}
body.cmpf-v2 .cmp-search-dropdown .dd-total b,
body.cmpf-v2 .cmp-search-dropdown .dd-headsel b{color:#ffe08a}
body.cmpf-v2 .cmp-search-dropdown .dd-more{color:#ffe08a; background:none; border:1px solid rgba(255,224,138,.6); border-radius:0.2rem}
body.cmpf-v2 .cmp-search-dropdown .dd-headsel{color:#dbe6f5}
body.cmpf-v2 .cmp-search-dropdown .dd-done{height:3rem; padding:0 1.2rem; background:#fff; color:var(--cf-navy); border:1px solid #fff; border-radius:0.3rem}
body.cmpf-v2 .cmp-search-dropdown .dd-alpha{gap:0.3rem; padding:0.9rem 1.4rem; background:var(--cf-bg); border-bottom:1px solid var(--cf-line2)}
body.cmpf-v2 .cmp-search-dropdown .dd-alpha button{min-width:3rem; height:2.8rem; padding:0 0.6rem; border:1px solid var(--cf-line); border-radius:0.3rem; font-size:1.3rem; font-weight:400; color:var(--cf-ink2)}
body.cmpf-v2 .cmp-search-dropdown .dd-alpha button:hover{border-color:var(--cf-blue); color:var(--cf-blue)}
body.cmpf-v2 .cmp-search-dropdown .dd-alpha button.on{background:var(--cf-ink); border-color:var(--cf-ink); color:#fff; font-weight:700}
body.cmpf-v2 .cmp-search-dropdown .dropdown-item{gap:1rem; padding:1.05rem 1.4rem; border-bottom:1px solid var(--cf-line2); transition:none}
body.cmpf-v2 .cmp-search-dropdown .dropdown-item:hover{background:var(--cf-blue-l)}
body.cmpf-v2 .cmp-search-dropdown .dropdown-item .dept-name{font-size:1.5rem; font-weight:400; color:var(--cf-ink)}
body.cmpf-v2 .cmp-search-dropdown .dropdown-item .dept-count{flex:none; font-size:1.3rem; font-weight:400; color:var(--cf-ink2); white-space:nowrap}
body.cmpf-v2 .cmp-search-dropdown .dropdown-item-all{background:#fbfcfe; border-bottom:1px solid var(--cf-line2)}
body.cmpf-v2 .cmp-search-dropdown .dropdown-item-all:hover{background:var(--cf-blue-l)}
body.cmpf-v2 .cmp-search-dropdown .dropdown-item-all .dept-name{font-size:1.5rem; font-weight:700; color:var(--cf-blue)}
body.cmpf-v2 .cmp-search-dropdown .dropdown-item-all .dept-count{color:var(--cf-ink2); font-weight:400}
body.cmpf-v2 .cmp-search-dropdown .dropdown-item.dropdown-item-disabled{background:var(--cf-blue-l)}
body.cmpf-v2 .cmp-search-dropdown .dropdown-item.dropdown-item-disabled .dept-name{color:var(--cf-navy); font-weight:700}
body.cmpf-v2 .cmp-search-dropdown .dd-picked{margin-left:0.6rem; padding:0 0.5rem; border:1px solid var(--cf-blue); border-radius:0.2rem; background:#fff; color:var(--cf-blue); font-size:1.3rem}
body.cmpf-v2 .cmp-search-dropdown .dd-pager{padding:1rem 1.4rem; background:#fff; border-top:1px solid var(--cf-line2)}
body.cmpf-v2 .cmp-search-dropdown .dd-pager button{border:1px solid var(--cf-line); border-radius:0.3rem; font-weight:400; color:var(--cf-ink)}
body.cmpf-v2 .cmp-search-dropdown .dd-pager button:hover:not(:disabled){border-color:var(--cf-blue); color:var(--cf-blue)}
body.cmpf-v2 .cmp-search-dropdown .dd-pager button.on{background:var(--cf-fill); border-color:var(--cf-fill); color:#fff; font-weight:700}
body.cmpf-v2 .cmp-search-dropdown .dd-pager button:disabled{opacity:1; color:#b8bfc9}
body.cmpf-v2 .cmp-search-dropdown .dd-pos{color:var(--cf-ink2)}
body.cmpf-v2 .cmp-search-dropdown .dd-foot{padding:1rem 1.4rem; background:var(--cf-bg); border-top:1px solid var(--cf-line)}
body.cmpf-v2 .cmp-search-dropdown .dd-selcnt{font-size:1.3rem; color:var(--cf-ink2)}
body.cmpf-v2 .cmp-search-dropdown .dd-selcnt b{color:var(--cf-blue)}
body.cmpf-v2 .cmp-search-dropdown .dd-close{height:3.6rem; padding:0 1.8rem; background:var(--cf-fill); border-radius:0.3rem; font-size:1.4rem}
body.cmpf-v2 .cmp-search-dropdown .dd-close:hover{background:var(--cf-blue-d)}
body.cmpf-v2 .cmp-search-dropdown .dd-empty{padding:2rem; font-size:1.5rem; color:var(--cf-ink2)}
body.cmpf-v2 .cmp-search-notice{border-radius:0}

/* ── 고른 학과 ── */
body.cmpf-v2 .cmp-selected-tags{gap:0.6rem; margin-top:1.2rem}
body.cmpf-v2 .cmp-selected-tags:empty{display:none}
body.cmpf-v2 .cmp-tag{gap:0.6rem; height:3.6rem; padding:0 0.4rem 0 1.2rem; color:var(--cf-navy); font-size:1.3rem; font-weight:700; background:var(--cf-blue-l); border:1px solid var(--cf-blue); border-radius:0.3rem}
body.cmpf-v2 .cmp-tag .tag-count{font-size:1.2rem; font-weight:600; color:var(--cf-ink2)}
body.cmpf-v2 .cmp-tag .tag-remove{width:2.6rem; height:2.6rem; color:var(--cf-ink2); font-size:1.6rem; border-radius:0.2rem; transition:none}
body.cmpf-v2 .cmp-tag .tag-remove:hover{color:var(--cf-red); background:#fff}
body.cmpf-v2 .cmp-tag-notice{padding:0.9rem 1.2rem; background:#fffaf0; border:1px solid #f0c36d; border-radius:0.3rem; font-size:1.3rem; color:#6b4e00}

/* ── 이용 흐름 안내 (모양만) ── */
body.cmpf-v2 .cmp-flow-guide{padding:1.6rem 2rem; background:var(--cf-bg); border:1px solid var(--cf-line); border-radius:0.4rem; box-shadow:none}
body.cmpf-v2 .cmp-flow-guide .flow-title{font-weight:700; color:var(--cf-ink)}
body.cmpf-v2 .cmp-flow-guide .flow-title i{color:var(--cf-blue)}
body.cmpf-v2 .cmp-flow-step{padding:0.8rem 1.2rem; border:1px solid var(--cf-line); border-radius:0.3rem}
body.cmpf-v2 .cmp-flow-step .step-num{background:var(--cf-fill); border-radius:0.3rem; font-size:1.3rem}
body.cmpf-v2 .cmp-flow-step .step-text{font-size:1.4rem; line-height:1.45; color:var(--cf-ink2)}
body.cmpf-v2 .cmp-flow-step .step-text strong{color:var(--cf-blue); font-weight:700}
body.cmpf-v2 .cmp-flow-arrow{color:var(--cf-mut)}

/* ── 처음 화면: 결과 자리 틀 + 가운데 안내 상자 ── */
body.cmpf-v2 .cmp-preview-wrap{position:relative; margin-top:4rem; padding:4rem 0 0; border:0; border-radius:0; overflow:visible; background:none}
body.cmpf-v2 .cmp-preview-wrap::before{content:''; position:absolute; top:0; left:0; width:22rem; height:2.6rem; background:#eef1f5}
body.cmpf-v2 .cmp-preview-wrap::after{content:''; position:absolute; top:4rem; left:0; right:0; bottom:0; border:1px solid var(--cf-line2); border-radius:0.4rem; background:repeating-linear-gradient(180deg,#fff 0,#fff 4.6rem,#eef1f5 4.6rem,#eef1f5 4.7rem)}
body.cmpf-v2 .cmp-preview-header{position:relative; z-index:1; display:block; min-height:30rem; padding:4rem 2rem; background:none; border:0; text-align:center}
body.cmpf-v2 .cmp-preview-header-text{display:block; width:min(64rem,100%); margin:0 auto; padding:2.2rem 2.4rem; background:#fff; border:1px solid var(--cf-blue-m); border-top:3px solid var(--cf-fill); border-radius:0.4rem; box-sizing:border-box}
body.cmpf-v2 .cmp-preview-header-text .preview-tit{display:flex; align-items:center; justify-content:center; gap:0.6rem; font-size:1.8rem; font-weight:700; color:var(--cf-navy); letter-spacing:-0.02rem}
body.cmpf-v2 .cmp-preview-header-text .preview-tit > i{margin:0; font-size:2rem; color:var(--cf-blue)}
body.cmpf-v2 .cmp-preview-header-text .preview-desc{display:block; margin-top:0.6rem; font-size:1.4rem; line-height:1.6; color:var(--cf-ink2)}
body.cmpf-v2 .cmp-manual-grade{display:inline-flex; align-items:center; gap:0.8rem; margin-top:1.6rem}
body.cmpf-v2 .cmp-manual-grade label{font-size:1.4rem; font-weight:700; color:var(--cf-ink)}
body.cmpf-v2 .cmp-manual-grade input{width:11rem; height:4rem; padding:0 1rem; border:1px solid var(--cf-line); border-radius:0.3rem; font-size:1.6rem; text-align:center; color:var(--cf-ink); box-shadow:none}
body.cmpf-v2 .cmp-manual-grade input:focus{outline:0; border-color:var(--cf-blue); box-shadow:inset 0 0 0 1px var(--cf-blue)}
body.cmpf-v2 .cmp-manual-grade .btn{height:4rem; padding:0 1.8rem; background:var(--cf-fill); border:0; color:#fff; border-radius:0.3rem; font-size:1.4rem; font-weight:700}
body.cmpf-v2 .cmp-manual-note{margin:1.4rem 0 0; padding:0.9rem 1.2rem; background:#fffaf0; border:1px solid #f0c36d; border-radius:0.3rem; font-size:1.3rem; line-height:1.6; color:#5c4400; text-align:left}
body.cmpf-v2 .cmp-manual-note a{color:var(--cf-blue); font-weight:700; text-decoration:underline}

/* ── 결과 ── */
body.cmpf-v2 .results-section{margin-top:4rem; padding:0; background:none; border:0; border-radius:0; box-shadow:none}
body.cmpf-v2 .results-section-header{justify-content:flex-start; gap:0.6rem; margin-bottom:1.6rem; padding-bottom:1.4rem; border-bottom:2px solid var(--cf-ink); font-family:'PretendardGOV', sans-serif; font-size:2.4rem; font-weight:700; color:var(--cf-ink); letter-spacing:-0.06rem}
body.cmpf-v2 .results-section-header > i{font-size:2.6rem; color:var(--cf-blue)}
/* 조건 묶음: 상자를 풀고 내 성적 칸 · 조건 줄 · 표시 개수 줄로 */
body.cmpf-v2 .cmp-control-panel{margin-bottom:0; padding:0; background:none; border:0; border-radius:0}
body.cmpf-v2 .cmp-panel-top{display:block; margin:0 0 1.6rem; padding:0; border:0}
/* 내 성적 칸 */
body.cmpf-v2 .cmp-control-panel .my-grade-info{display:block; gap:0; background:#fff; border:2px solid var(--cf-fill); border-radius:0.4rem; font-size:1.4rem; color:var(--cf-ink); letter-spacing:0}
body.cmpf-v2 .cmp-control-panel .my-grade-info .mgi-hd{display:flex; align-items:center; gap:0.6rem; flex-wrap:wrap; padding:1.1rem 1.6rem; background:var(--cf-navy); color:#fff}
body.cmpf-v2 .cmp-control-panel .my-grade-info .mgi-hd i{font-size:1.9rem; color:var(--cf-icon)}
body.cmpf-v2 .cmp-control-panel .my-grade-info .mgi-tit{font-size:1.6rem; font-weight:800; color:#fff}
body.cmpf-v2 .cmp-control-panel .my-grade-info .mp-guide-link{top:0; margin-left:auto; padding:0; background:none; border-radius:0; font-size:1.4rem; font-weight:600; color:#fff; text-decoration:underline}
body.cmpf-v2 .cmp-control-panel .my-grade-info .mp-guide-link:hover{background:none; color:#ffe08a}
body.cmpf-v2 .cmp-control-panel .my-grade-info .mgi-sm{display:grid; grid-template-columns:repeat(3,minmax(0,1fr))}
body.cmpf-v2 .cmp-control-panel .my-grade-info .mgi-sm.two{grid-template-columns:repeat(2,minmax(0,1fr))}
body.cmpf-v2 .cmp-control-panel .my-grade-info .mgi-sm > div{padding:1.2rem 1.6rem; border-right:1px solid var(--cf-line2)}
body.cmpf-v2 .cmp-control-panel .my-grade-info .mgi-sm > div:last-child{border-right:0}
body.cmpf-v2 .cmp-control-panel .my-grade-info .mgi-sm .k{display:block; font-size:1.3rem; color:var(--cf-ink2)}
body.cmpf-v2 .cmp-control-panel .my-grade-info .mgi-sm strong{display:block; margin-top:0.2rem; font-size:2rem; font-weight:800; color:var(--cf-ink); font-variant-numeric:tabular-nums}
body.cmpf-v2 .cmp-control-panel .my-grade-info .mgi-sm .m strong{color:var(--cf-navy-num)}
body.cmpf-v2 .cmp-control-panel .my-grade-info .mgi-nt{margin:0; padding:0.9rem 1.6rem; border-top:1px solid var(--cf-line2); font-size:1.3rem; color:var(--cf-ink2)}
body.cmpf-v2 .cmp-control-panel .my-grade-info .mgi-nt[style*="none"]{display:none}
/* 5등급제 안내(compare.js 가 칸 안을 바꿔 넣음) */
body.cmpf-v2 .cmp-control-panel .my-grade-info:not(:has(.mgi-hd)){display:flex; align-items:flex-start; gap:0.8rem; padding:1.4rem 1.6rem; line-height:1.6}
body.cmpf-v2 .cmp-control-panel .my-grade-info:not(:has(.mgi-hd)) > i{font-size:1.9rem; color:var(--cf-blue)}
body.cmpf-v2 .cmp-control-panel .my-grade-info:not(:has(.mgi-hd)) strong{font-size:inherit; color:var(--cf-ink)}
body.cmpf-v2 .cmp-control-panel .my-grade-info:not(:has(.mgi-hd)){flex-wrap:nowrap}
body.cmpf-v2 .cmp-control-panel .my-grade-info:not(:has(.mgi-hd)) > span{display:block; flex:1; min-width:0}   /* 공용 모바일 규칙(span 을 flex 로)에서 굵은 글자가 문장에서 떨어지지 않게 */
/* 조건 줄 */
body.cmpf-v2 .cmp-panel-filters{gap:0; border:1px solid var(--cf-line); border-radius:0.4rem; background:#fff}
body.cmpf-v2 .cmp-toggle-group{gap:1rem; padding:1rem 1.4rem; border-right:1px solid var(--cf-line2)}
body.cmpf-v2 .cmp-panel-filters > .cmp-toggle-group:last-child,
body.cmpf-v2 .cmp-panel-filters > .cmp-toggle-group:has(+ .cmp-toggle-group[style*="none"]){border-right:0}
body.cmpf-v2 .cmp-toggle-label{font-size:1.3rem; font-weight:700; color:var(--cf-ink); white-space:nowrap}
body.cmpf-v2 .cmp-toggle-btns{border:1px solid var(--cf-line); border-radius:0.3rem}
body.cmpf-v2 .cmp-toggle-btn{height:3.4rem; padding:0 1.3rem; font-size:1.4rem; color:var(--cf-ink2); white-space:nowrap; transition:none}
body.cmpf-v2 .cmp-toggle-btn + .cmp-toggle-btn{border-left:1px solid var(--cf-line)}
body.cmpf-v2 .cmp-toggle-btn.selected{background:var(--cf-fill); color:#fff; font-weight:700}
body.cmpf-v2 .cmp-toggle-btn:hover:not(.selected):not(:disabled){background:var(--cf-blue-l); color:var(--cf-blue)}
body.cmpf-v2 .cmp-toggle-btn:disabled,
body.cmpf-v2 .cmp-toggle-btn.disabled{color:#b8bfc9; background:#f3f5f8}
/* 표시 개수 줄 */
body.cmpf-v2 .cmp-panel-count{margin-top:1rem; padding-top:0; border-top:0; font-size:1.4rem; line-height:1.6; color:var(--cf-ink2)}
body.cmpf-v2 .cmp-panel-count > i{font-size:1.5rem; color:var(--cf-blue)}
body.cmpf-v2 .cmp-panel-count strong{color:var(--cf-ink)}

/* ── 결과 없음 ── */
/* 결과 없음 칸이 보이면 바로 전 조건의 건수 줄은 숨긴다(내용이 맞지 않음) */
body.cmpf-v2 .cmp-control-panel:has(~ #emptyResultPanel:not([style*="none"])) #panelCount,
body.cmpf-v2 .cmp-control-panel:has(~ #noDataPanel:not([style*="none"])) #panelCount{display:none !important}
body.cmpf-v2 .cmp-empty-result{margin:1.6rem 0 0; padding:3.2rem 2rem; border:1px solid var(--cf-line); border-radius:0.4rem}
body.cmpf-v2 .cmp-empty-result > i{margin-bottom:0.8rem; font-size:3.2rem; color:#9aa3ae}
body.cmpf-v2 .cmp-empty-tit{margin-bottom:0.4rem; font-size:1.6rem; font-weight:700; color:var(--cf-ink)}
body.cmpf-v2 .cmp-empty-desc{margin-bottom:0; font-size:1.4rem; color:var(--cf-ink2)}
body.cmpf-v2 .cmp-empty-result .btn{display:inline-flex; align-items:center; gap:0.5rem; margin-top:1.4rem; height:4rem; padding:0 1.8rem; background:var(--cf-fill); border:0; color:#fff; border-radius:0.3rem; font-size:1.4rem; font-weight:700}

/* ── 추천대학 ── */
body.cmpf-v2 .cmp-chart-section{margin:0 0 0}
body.cmpf-v2 .cmp-chart-section:has(> .cmp-more-btn[style*="none"]){margin-bottom:2.4rem}   /* 「차트 더보기」가 없을 때도 아래 카드·표와 단추 있을 때만큼 띄움(대학별 내 위치에서 붙던 것, 2026-10-13) */
body.cmpf-v2 .cmp-recommended{margin:1.6rem 0 0; padding:0; background:#fffdf5; border:1px solid #f0c36d; border-radius:0.4rem; box-shadow:none}
body.cmpf-v2 .cmp-recommended.hidden{display:none}
body.cmpf-v2 .cmp-recommended-header{gap:0.6rem; margin:0; padding:0.9rem 1.4rem; border-bottom:1px solid #f5dfa6; font-size:1.4rem; font-weight:700; color:#5c4400}
body.cmpf-v2 .cmp-recommended-header i{font-size:1.6rem; color:#b7791f}
body.cmpf-v2 .cmp-ad-badge{padding:0 0.5rem; background:#fff; border:1px solid #b7791f; border-radius:0.2rem; color:#7a4f00; font-size:1.2rem; font-weight:800}
body.cmpf-v2 .cmp-recommended-list{gap:0.6rem; padding:1.1rem 1.4rem}
body.cmpf-v2 .cmp-recommended-item{display:inline-flex; align-items:center; gap:0.4rem; height:3.6rem; padding:0 1.2rem; background:#fff; border:1px solid var(--cf-line); border-radius:0.3rem; font-size:1.3rem; color:var(--cf-ink); box-shadow:none; transition:none}
body.cmpf-v2 .cmp-recommended-item:hover{border-color:var(--cf-blue); color:var(--cf-blue); background:#fff}
body.cmpf-v2 .cmp-recommended-item.active{background:var(--cf-fill); border-color:var(--cf-fill); color:#fff; font-weight:700}
body.cmpf-v2 .cmp-recommended-alt{border-color:#e6cf9c !important}

/* ── 그래프 ── */
body.cmpf-v2 .cmp-chart-container{margin-top:1.6rem; padding:0; border:1px solid var(--cf-line); border-radius:0.4rem}
body.cmpf-v2 .cmp-chart-inner-note{gap:0.6rem; margin:0; padding:1rem 1.4rem; border-bottom:1px solid var(--cf-line2); font-size:1.3rem; line-height:1.6; color:var(--cf-ink2)}
body.cmpf-v2 .cmp-chart-inner-note > i{font-size:1.5rem; color:var(--cf-blue)}
body.cmpf-v2 .cdot{margin-top:0}
body.cmpf-v2 .cdot-legend{gap:1.8rem; margin:0; padding:1rem 1.4rem; background:#fff; border:0; border-bottom:1px solid var(--cf-line2); border-radius:0; font-size:1.3rem; color:var(--cf-ink2)}
body.cmpf-v2 .cdot-legend .lg.b50,
body.cmpf-v2 .cdot-legend .lg.b70{height:1rem; border-radius:0}
body.cmpf-v2 .cdot-axis{margin:0; padding:1rem 1.4rem 0.6rem 0; background:var(--cf-bg); border-top:0; border-bottom:1px solid var(--cf-line)}
body.cmpf-v2 .cdot-cap{color:var(--cf-ink)}
body.cmpf-v2 .cdot-cap.mid em{color:var(--cf-ink)}
body.cmpf-v2 .cdot-ticks{font-weight:600; color:var(--cf-ink2)}
body.cmpf-v2 .cdot-row{padding-right:1.4rem; border-bottom:1px solid var(--cf-line2); transition:none}
body.cmpf-v2 .cdot-row:last-child{border-bottom:0}
body.cmpf-v2 .cdot-row:hover{box-shadow:none}
body.cmpf-v2 .cdot-row.inband:hover{box-shadow:inset 3px 0 0 var(--cf-blue)}
body.cmpf-v2 .cdot-row:hover .cdot-track,
body.cmpf-v2 .cdot-row.inband .cdot-track,
body.cmpf-v2 .cdot-track{border-radius:0; box-shadow:none}
body.cmpf-v2 .cdot-lab:after,
body.cmpf-v2 .cdot-cut:after{top:0; bottom:0; background:var(--cf-line2)}
body.cmpf-v2 .cdot-lab .c{color:var(--cf-ink2)}
body.cmpf-v2 .cdot-bar{height:1.5rem; border-radius:0}
body.cmpf-v2 .cdot-bar.b50{top:1.3rem}
body.cmpf-v2 .cdot-bar.b70{top:4rem}
body.cmpf-v2 .cdot-tip{border-radius:0.3rem}
body.cmpf-v2 .cdot-tip .d{border-radius:0}
body.cmpf-v2 .cdot-tip .d.avg{border-radius:0}
/* 더보기 */
body.cmpf-v2 .cmp-more-btn{height:4.6rem; margin:1.2rem 0 2.4rem; padding:0; color:var(--cf-blue-d); font-size:1.4rem; font-weight:700; background:var(--cf-blue-l); border:1px solid var(--cf-blue); border-radius:0.4rem; transition:background-color .15s,color .15s}   /* 차트 더보기: 옅은 파랑 바탕 + 파랑 테두리, 아래 표와 24 띄움 (2026-10-12) */
body.cmpf-v2 .cmp-more-btn:hover{color:#fff; background:var(--cf-blue); border-color:var(--cf-blue)}
body.cmpf-v2 .cmp-more-btn > i, body.cmpf-v2 .cmp-more-btn span i{font-size:1.8rem; color:inherit}

/* ── 키워드 광고 ── */
body.cmpf-v2 .cmp-keyword-banner{margin:2.4rem 0 0}

/* ── 표 ── */
body.cmpf-v2 .cmp-table-section{margin:0}
body.cmpf-v2 .cmp-table-guide{display:flex; align-items:center; gap:0.5rem; margin:2.4rem 0 0.8rem; font-size:1.3rem; color:var(--cf-ink2)}
body.cmpf-v2 .cmp-table-guide > i{margin:0; font-size:1.5rem; color:var(--cf-blue)}
body.cmpf-v2 .cmp-table-section .con-table{border:1px solid var(--cf-line); border-radius:0.4rem; overflow-x:auto}
body.cmpf-v2 .cmp-table-section .con-table table{border:0; border-collapse:collapse; font-variant-numeric:tabular-nums}
body.cmpf-v2 .cmp-table-section .con-table table > thead > tr > th{padding:1.2rem 0.9rem; background:var(--cf-navy); color:#fff; font-size:1.4rem; font-weight:700; border:0; border-right:1px solid var(--cf-navy-line); white-space:nowrap}
body.cmpf-v2 .cmp-table-section .con-table table > thead > tr > th:last-child{border-right:0}
body.cmpf-v2 .cmp-table-section .con-table table > tbody > tr > td{padding:1.1rem 0.9rem; border:0; border-bottom:1px solid var(--cf-line2); border-right:1px solid var(--cf-line2); font-size:1.4rem; color:var(--cf-ink); vertical-align:middle}
body.cmpf-v2 .cmp-table-section .con-table table > tbody > tr > td:last-child{border-right:0}
body.cmpf-v2 .cmp-table-section .con-table table > tbody > tr:last-child > td{border-bottom:0}
body.cmpf-v2 .cmp-table-section .con-table table > tbody > tr:hover{background:transparent}
body.cmpf-v2 .cmp-table-section .con-table table > tbody > tr:hover > td:not([rowspan]){background:var(--cf-blue-l)}
/* 대학 묶음: 첫 줄 위에 굵은 선, 묶음 칸은 옅은 바탕 */
body.cmpf-v2 .cmp-table-section .con-table table > tbody > tr:has(> td.cmp-univ-cell):not(:first-child) > td{border-top:2px solid #aab4c2}
body.cmpf-v2 .cmp-table-section .con-table table > tbody > tr > td[rowspan],
body.cmpf-v2 .cmp-table-section .con-table table > tbody > tr:has(> td.cmp-univ-cell) > td:nth-child(-n+3){background:var(--cf-bg); font-size:1.5rem; font-weight:600}
body.cmpf-v2 .cmp-table-section .con-table table > tbody > tr[style*="background"] > td{background:transparent}   /* 그래프에서 대학을 누르면 잠깐 칠해지는 줄 */
body.cmpf-v2 .cmp-univ-cell{font-weight:700 !important; border-right:1px solid var(--cf-line2)}
body.cmpf-v2 .cmp-type-link{color:var(--cf-blue); font-weight:600; text-decoration:underline; text-underline-offset:0.2rem}
body.cmpf-v2 .cmp-pos-desc{text-align:left; font-size:1.3rem; color:var(--cf-ink2)}
body.cmpf-v2 .cmp-pos{min-width:5.6rem; padding:0.2rem 0.6rem; border:1px solid; border-radius:0.2rem; font-family:'PretendardGOV', sans-serif; font-size:1.3rem; font-weight:700}
body.cmpf-v2 .cmp-pos-minus{color:#a61b1b; border-color:#f1a9a9; background:#fff1f1}
body.cmpf-v2 .cmp-pos-in{color:#0b3d91; border-color:#9cc0ff; background:#eef5ff}
body.cmpf-v2 .cmp-pos-plus{color:#11632f; border-color:#9fd8b2; background:#effaf3}
body.cmpf-v2 .cmp-pos-none{color:var(--cf-ink2); border-color:var(--cf-line); background:var(--cf-bg)}
body.cmpf-v2 .cmp-no-data{color:var(--cf-mut); font-size:1.3rem}

/* ── 안내 ── */
body.cmpf-v2 .data-info-panel{margin-top:2.4rem; border:1px solid var(--cf-line); border-radius:0.4rem; box-shadow:none; background:#fff}

/* ── 대체 학과 안내 창 (창 안 모양만) ── */
body.cmpf-v2 #recAltModal > div{border-radius:0.4rem !important}
body.cmpf-v2 .rec-alt-dept{border-radius:0.3rem}

/* 글자 크기 통일(2026-10-12) — compare.css(여러 화면 공통)에 있는 글자 중 이 화면 것만, PC에서만 맞춤 */
@media all and (min-width:801px){
    body.cmpf-v2 .cmp-flow-guide .flow-title{font-size:1.4rem}
    body.cmpf-v2 .cdot-lab .u{font-size:1.4rem}
    body.cmpf-v2 .cdot-cut span{font-size:1.2rem}
    body.cmpf-v2 .cdot-cap.mid em{font-size:1.2rem}
    body.cmpf-v2 .cdot-none{font-size:1.3rem}
    body.cmpf-v2 .cdot-tip{font-size:1.3rem}
    body.cmpf-v2 .cdot-tip h4 small{font-size:1.2rem}
    body.cmpf-v2 .cmp-search-dropdown .dd-more{font-size:1.3rem}
    body.cmpf-v2 .cmp-search-dropdown .dd-pos{font-size:1.3rem}
}
/* 페이지 제목 위 「최신입결오픈」 · 학과 안내 창 */
body.cmpf-v2 .page-current .tit-new-badge{font-size:1.3rem}
body.cmpf-v2 #recAltModal .rec-alt-tit{font-size:2rem}
body.cmpf-v2 #recAltModal .rec-alt-desc{font-size:1.4rem}
body.cmpf-v2 #recAltModal .rec-alt-empty{font-size:1.5rem}

@media all and (max-width:800px){
    /* 글자 크기 통일(2026-10-12)은 PC 기준 — 800px 이하 값 중 response.css 모바일 기준표(html.fs-std)에 있는 것은 그쪽이 다시 덮음 */
    body.cmpf-v2 .page-current .tit-new-badge{font-size:1.4rem}
    body.cmpf-v2 #recAltModal .rec-alt-tit{font-size:16px}
    body.cmpf-v2 #recAltModal .rec-alt-desc{font-size:13px}
    body.cmpf-v2 #recAltModal .rec-alt-empty{font-size:13px}
    body.cmpf-v2 .filter-step .filter-step-top .step-tit{font-size:1.45rem}
    body.cmpf-v2 .filter-step .filter-step-top .step-tit::before{font-size:1.2rem}
    body.cmpf-v2 .filter-step .filter-grid .filter-item{font-size:1.35rem}
    body.cmpf-v2 .cmp-search-input input{font-size:1.45rem}
    body.cmpf-v2 .cmp-search-input input::placeholder{font-size:1.45rem}
    body.cmpf-v2 .cmp-tag-clear-btn{font-size:1.25rem}
    body.cmpf-v2 .cmp-search-guide{font-size:1.25rem}
    body.cmpf-v2 .cmp-search-dropdown .dd-total{font-size:1.35rem}
    body.cmpf-v2 .cmp-search-dropdown .dd-alpha button{font-size:1.25rem}
    body.cmpf-v2 .cmp-search-dropdown .dropdown-item .dept-name{font-size:1.4rem}
    body.cmpf-v2 .cmp-search-dropdown .dropdown-item .dept-count{font-size:1.25rem}
    body.cmpf-v2 .cmp-search-dropdown .dropdown-item-all .dept-name{font-size:1.4rem}
    body.cmpf-v2 .cmp-search-dropdown .dd-picked{font-size:1.15rem}
    body.cmpf-v2 .cmp-search-dropdown .dd-close{font-size:1.35rem}
    body.cmpf-v2 .cmp-search-dropdown .dd-empty{font-size:1.4rem}
    body.cmpf-v2 .cmp-tag{font-size:1.35rem}
    body.cmpf-v2 .cmp-tag-notice{font-size:1.25rem}
    body.cmpf-v2 .cmp-flow-step .step-num{font-size:1.15rem}
    body.cmpf-v2 .cmp-flow-step .step-text{font-size:1.25rem}
    body.cmpf-v2 .cmp-preview-header-text .preview-tit{font-size:1.7rem}
    body.cmpf-v2 .cmp-preview-header-text .preview-desc{font-size:1.35rem}
    body.cmpf-v2 .cmp-manual-grade label{font-size:1.35rem}
    body.cmpf-v2 .cmp-manual-grade input{font-size:1.5rem}
    body.cmpf-v2 .cmp-manual-note{font-size:1.25rem}
    body.cmpf-v2 .results-section-header{font-size:2.6rem}
    body.cmpf-v2 .cmp-control-panel .my-grade-info .mgi-tit{font-size:1.55rem}
    body.cmpf-v2 .cmp-control-panel .my-grade-info .mp-guide-link{font-size:1.25rem}
    body.cmpf-v2 .cmp-control-panel .my-grade-info .mgi-sm .k{font-size:1.25rem}
    body.cmpf-v2 .cmp-control-panel .my-grade-info .mgi-sm strong{font-size:2.1rem}
    body.cmpf-v2 .cmp-control-panel .my-grade-info .mgi-nt{font-size:1.25rem}
    body.cmpf-v2 .cmp-toggle-btn{font-size:1.3rem}
    body.cmpf-v2 .cmp-panel-count{font-size:1.3rem}
    body.cmpf-v2 .cmp-empty-tit{font-size:1.7rem}
    body.cmpf-v2 .cmp-empty-desc{font-size:1.35rem}
    body.cmpf-v2 .cmp-recommended-header{font-size:1.35rem}
    body.cmpf-v2 .cmp-ad-badge{font-size:1.1rem}
    body.cmpf-v2 .cmp-chart-inner-note{font-size:1.25rem}
    body.cmpf-v2 .cdot-legend{font-size:1.25rem}
    body.cmpf-v2 .cmp-more-btn{font-size:1.35rem}
    body.cmpf-v2 .cmp-table-guide{font-size:1.25rem}
    body.cmpf-v2 .cmp-table-section .con-table table > thead > tr > th{font-size:1.5rem}
    body.cmpf-v2 .cmp-table-section .con-table table > tbody > tr > td[rowspan], body.cmpf-v2 .cmp-table-section .con-table table > tbody > tr:has(> td.cmp-univ-cell) > td:nth-child(-n+3){font-size:1.45rem}
    body.cmpf-v2 .cmp-pos{font-size:1.25rem}
    body.cmpf-v2 .cmp-no-data{font-size:1.2rem}
    /* 단계 상자: 단계 이름을 위 줄로 */
    body.cmpf-v2 .filter-step{grid-template-columns:minmax(0,1fr); padding:0 1.2rem 1.2rem; background:#fff}
    body.cmpf-v2 .filter-step > *,
    body.cmpf-v2 .filter-step .filter-step-top .step-tit{grid-column:1}
    body.cmpf-v2 .filter-step .filter-step-top .step-tit{grid-row:auto; margin:0 -1.2rem; padding:1rem 1.2rem; background:var(--cf-bg); border-right:0; border-bottom:1px solid var(--cf-line2)}
    body.cmpf-v2 .filter-step > *:not(.filter-step-top){margin-left:0; margin-top:1.2rem}
    body.cmpf-v2 .filter-step .filter-grid .filter-item{min-height:3.4rem; padding:0.5rem 1rem; font-size:1.25rem}
    /* 내 성적 칸: 한 줄씩 */
    body.cmpf-v2 .cmp-control-panel .my-grade-info .mgi-hd{padding:1rem 1.2rem}
    body.cmpf-v2 .cmp-control-panel .my-grade-info .mgi-sm,
    body.cmpf-v2 .cmp-control-panel .my-grade-info .mgi-sm.two{grid-template-columns:minmax(0,1fr)}
    body.cmpf-v2 .cmp-control-panel .my-grade-info .mgi-sm > div{display:flex; justify-content:space-between; align-items:center; gap:1rem; padding:0.9rem 1.4rem; border-right:0; border-bottom:1px solid var(--cf-line2)}
    body.cmpf-v2 .cmp-control-panel .my-grade-info .mgi-sm > div:last-child{border-bottom:0}
    body.cmpf-v2 .cmp-control-panel .my-grade-info .mgi-sm strong{margin:0; font-size:1.7rem; white-space:nowrap}
    body.cmpf-v2 .cmp-control-panel .my-grade-info .mgi-nt{padding:0.9rem 1.4rem}
    /* 조건 줄: 위아래로 */
    body.cmpf-v2 .cmp-panel-filters{flex-direction:column; align-items:stretch}
    body.cmpf-v2 .cmp-toggle-group{justify-content:space-between; padding:0.9rem 1.2rem; border-right:0; border-bottom:1px solid var(--cf-line2)}
    body.cmpf-v2 .cmp-panel-filters > .cmp-toggle-group:last-child,
    body.cmpf-v2 .cmp-panel-filters > .cmp-toggle-group:has(+ .cmp-toggle-group[style*="none"]){border-bottom:0}
    body.cmpf-v2 .cmp-toggle-btns{flex:none}
    body.cmpf-v2 .cmp-toggle-btn{padding:0 1rem; font-size:1.25rem}
    /* 처음 화면 */
    body.cmpf-v2 .cmp-preview-wrap{margin-top:3rem}
    body.cmpf-v2 .cmp-preview-header{min-height:44rem; padding:3rem 1.2rem}
    body.cmpf-v2 .cmp-preview-header-text{padding:1.6rem 1.4rem}
    body.cmpf-v2 .cmp-preview-header-text .preview-tit{font-size:1.5rem}
    body.cmpf-v2 .cmp-manual-grade{flex-wrap:wrap; justify-content:center}
    body.cmpf-v2 .cmp-manual-grade input{width:11rem}
    body.cmpf-v2 .results-section{margin-top:3rem}
    body.cmpf-v2 .results-section-header{font-size:2rem}
    body.cmpf-v2 .results-section-header > i{font-size:2rem}
    /* 모바일 카드 */
    body.cmpf-v2 .cmp-card-list{gap:1rem}
    body.cmpf-v2 .cmp-card{border:1px solid var(--cf-line); border-radius:0.4rem}
    body.cmpf-v2 .cmp-card-header{padding:1rem 1.2rem; background:var(--cf-bg); border-bottom:1px solid var(--cf-line); font-size:1.4rem; font-weight:700; color:var(--cf-ink)}
    body.cmpf-v2 .cmp-card-header .card-region{font-size:1.2rem; font-weight:600; color:var(--cf-ink2)}
    body.cmpf-v2 .cmp-card-entry{padding:1rem 1.2rem; border-bottom:1px solid var(--cf-line2)}
    body.cmpf-v2 .cmp-card-entry .cmp-type-link{font-size:1.35rem; font-weight:700; margin-bottom:0.5rem}
    body.cmpf-v2 .cmp-card-cuts{font-size:1.3rem; color:var(--cf-ink2)}
    body.cmpf-v2 .cmp-card-cuts span strong{font-weight:700; color:var(--cf-ink)}
    body.cmpf-v2 .cmp-card-pos{font-size:1.25rem; color:var(--cf-ink2)}
}
@media all and (max-width:767px){
    body.cmpf-v2 .cmp-flow-guide{padding:1.2rem 1.4rem}
    body.cmpf-v2 .cmp-flow-arrow{align-self:center; pointer-events:none}   /* 세로로 돌린 화살표가 줄 전체 폭으로 남아 위쪽 지역 단추를 덮던 문제 */
    body.cmpf-v2 .cmp-flow-step{padding:0.7rem 1rem}
    body.cmpf-v2 .cmp-flow-step .step-text{font-size:1.2rem}
    body.cmpf-v2 .cmp-search-dropdown{border-radius:0.4rem}
    body.cmpf-v2 .cdot-legend{gap:0.6rem 1.2rem; font-size:1.15rem; padding:0.8rem 1rem}
    body.cmpf-v2 .cdot-axis{padding:0.8rem 1rem 0.6rem 0}
    body.cmpf-v2 .cdot-row{padding:0.8rem 1rem 0.9rem 0}
    body.cmpf-v2 .cdot-lab{padding:0 0 0.4rem 1rem}
    body.cmpf-v2 .cdot-track{height:6rem}
    body.cmpf-v2 .cdot-bar{height:1.3rem}
    body.cmpf-v2 .cdot-bar.b50{top:1.1rem}
    body.cmpf-v2 .cdot-bar.b70{top:3.6rem}
}
@media all and (max-width:600px){
    body.cmpf-v2 .cmp-search-input{height:4.4rem; border-radius:0.4rem}
    body.cmpf-v2 .cmp-search-input input{font-size:1.35rem; padding-left:4.2rem}
    body.cmpf-v2 .cmp-search-input input::placeholder{font-size:1.35rem}
    body.cmpf-v2 .cmp-search-input i{left:1.3rem; font-size:1.7rem}
    body.cmpf-v2 .cmp-chart-container{padding:0}
    body.cmpf-v2 .cmp-control-panel{padding:0; border-radius:0}
    body.cmpf-v2 .cmp-control-panel .my-grade-info{font-size:1.3rem}
    body.cmpf-v2 .results-section{padding:0; border-radius:0}
}
/* 틀 통일 B안 (2026-10-12) — 모서리 6px, PC·태블릿·모바일 */
@media all{
    /* ── 단계 상자: 한 상자 안 두 줄 (왼쪽 단계 이름) ── */
body.cmpf-v2 .filter-sec{border-radius:6px}
    body.cmpf-v2 .filter-step .filter-step-top .step-tit::before{border-radius:6px}
body.cmpf-v2 .filter-step .filter-grid .filter-item{border-radius:6px}
    body.cmpf-v2 .cmp-search-input{border-radius:6px}
    /* 입력칸 안내 문구 = 그 칸의 입력 글자 크기 (2026-10-12) */
body.cmpf-v2 .cmp-tag-clear-btn{border-radius:6px}
    body.cmpf-v2 .cmp-search-guide{border-radius:6px}
    /* ── 학과 검색 목록 ── */
body.cmpf-v2 .cmp-search-dropdown{border-radius:6px}
    body.cmpf-v2 .cmp-search-dropdown .dd-done{border-radius:6px}
    body.cmpf-v2 .cmp-search-dropdown .dd-alpha button{border-radius:6px}
    body.cmpf-v2 .cmp-search-dropdown .dd-pager button{border-radius:6px}
    body.cmpf-v2 .cmp-search-dropdown .dd-close{border-radius:6px}
    body.cmpf-v2 .cmp-tag{border-radius:6px}
    body.cmpf-v2 .cmp-tag-notice{border-radius:6px}
    /* ── 이용 흐름 안내 (모양만) ── */
body.cmpf-v2 .cmp-flow-guide{border-radius:6px}
    body.cmpf-v2 .cmp-flow-step{border-radius:6px}
    body.cmpf-v2 .cmp-flow-step .step-num{border-radius:6px}
    body.cmpf-v2 .cmp-preview-wrap::after{border-radius:6px}
    body.cmpf-v2 .cmp-preview-header-text{border-radius:6px}
    body.cmpf-v2 .cmp-manual-grade input{border-radius:6px}
    body.cmpf-v2 .cmp-manual-grade .btn{border-radius:6px}
    body.cmpf-v2 .cmp-manual-note{border-radius:6px}
    /* 내 성적 칸 */
body.cmpf-v2 .cmp-control-panel .my-grade-info{border-radius:6px}
    /* 공용 모바일 규칙(span 을 flex 로)에서 굵은 글자가 문장에서 떨어지지 않게 */
/* 조건 줄 */
body.cmpf-v2 .cmp-panel-filters{border-radius:6px}
    body.cmpf-v2 .cmp-toggle-btns{border-radius:6px}
    body.cmpf-v2 .cmp-empty-result{border-radius:6px}
    body.cmpf-v2 .cmp-empty-result .btn{border-radius:6px}
    body.cmpf-v2 .cmp-recommended{border-radius:6px}
    body.cmpf-v2 .cmp-recommended-item{border-radius:6px}
    /* ── 그래프 ── */
body.cmpf-v2 .cmp-chart-container{border-radius:6px}
    body.cmpf-v2 .cdot-tip{border-radius:6px}
    /* 더보기 */
body.cmpf-v2 .cmp-more-btn{border-radius:6px}
    body.cmpf-v2 .cmp-table-section .con-table{border-radius:6px}
    /* ── 안내 ── */
body.cmpf-v2 .data-info-panel{border-radius:6px}
    /* ── 대체 학과 안내 창 (창 안 모양만) ── */
body.cmpf-v2 #recAltModal > div{border-radius:6px !important}
    body.cmpf-v2 .rec-alt-dept{border-radius:6px}
}
/* 틀 통일 B안 (2026-10-12) — 큰 검색칸·주 단추 50 · 조건 줄 입력칸·보조/선택 단추 40 · 모서리 6, PC·태블릿·모바일(rem 이라 폭 따라 줄어듦) */
@media all{
    body.cmpf-v2 .cmp-search-input{height:5rem; min-height:5rem}
    body.cmpf-v2 .cmp-search-input input{height:100%}
    body.cmpf-v2 .filter-step .filter-grid .filter-item{min-height:4rem; height:4rem}
}
/* 틀 통일 B안 (2026-10-12) — 구역 사이 40px, PC·태블릿·모바일 */
@media all{
    body.cmpf-v2 .filter-sec{margin-top:4rem}
}
/* 틀 통일 B안 (2026-10-12) — 상자 안 여백: 글이 들어가는 큰 상자 24 · 작은 상자 16, PC·태블릿·모바일 */
@media all{
    body.cmpf-v2 .cmp-preview-header-text{padding:2.4rem}
    body.cmpf-v2 .cmp-flow-guide,body.cmpf-v2 .cmp-search-guide{padding:1.6rem}
}
/* 틀 통일 B안 (2026-10-12) — 모바일 상자 안 여백: 큰 상자 16 · 작은 상자 12 */
@media all and (max-width:800px){
    body.cmpf-v2 .cmp-preview-header-text{padding:2rem}
    body.cmpf-v2 .cmp-flow-guide,body.cmpf-v2 .cmp-search-guide{padding:1.5rem}
}
/* 모바일: 검색칸은 검색 목록이 열렸을 때(body.dd-open)만 맨 위로 — 평소에는 햄버거 메뉴(헤더 안) 위로 비치지 않게 (2026-10-12) */
@media (max-width:767px){
    body.cmpf-v2:not(.dd-open) .cmp-search-box{z-index:auto}
}
