/* 자료실 7판 화면 층(시안 motion·v4~v7 그대로). 문제은행 틀(bank.css) 위에 얹어 두 화면(자료실·학원 DB)이 같은 모양을 쓴다. */
@media (min-width:1281px){.dbt .hd,.dbt .rw{grid-template-columns:36px 44px minmax(0,1fr) 150px 170px 64px 96px 30px}}
/* 시안: 카드 메뉴·신청 창·움직임 */
.menu{animation:mIn .16s cubic-bezier(.2,.8,.3,1) both;transform-origin:top right}
.menu.up{transform-origin:bottom right}
.menu.cardmenu{min-width:262px;padding:6px;border-radius:12px}
.menu .mhd{font-size:11.5px;font-weight:700;color:var(--navy);padding:8px 10px 6px;border-bottom:1px solid var(--line);margin:0 2px 4px}
.menu .mg{font-size:11px;font-weight:700;color:var(--navy);padding:8px 10px 2px;letter-spacing:.02em}
.menu.cardmenu button{height:auto;min-height:36px;padding:7px 10px;justify-content:flex-start;gap:10px;transition:background .12s}
.menu.cardmenu button:disabled{cursor:default;opacity:1}
.menu.cardmenu button:disabled .mt b{color:var(--text2)}
.menu .mi{width:18px;height:18px;flex:none;fill:none;stroke:var(--navy);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.menu button[data-a="rq-fix"] .mi{stroke:var(--red)}
.menu .mt{display:flex;flex-direction:column;gap:1px;flex:1;min-width:0}
.menu .mt b{font-weight:600;font-size:13px}
.menu .mt small{font-size:11px;color:#39406A;font-weight:400}
.menu .md{font-style:normal;font-size:10.5px;font-weight:700;color:var(--green);background:#E2F0D6;border-radius:4px;padding:1px 6px}
@keyframes mIn{from{opacity:0;transform:translateY(-4px) scale(.97)}to{opacity:1;transform:none}}
.dim{animation:fIn .18s ease both}.dim .modal{animation:pIn .24s cubic-bezier(.2,.8,.3,1) both}
.dim.out{animation:fOut .16s ease both}.dim.out .modal{animation:pOut .16s ease both}
@keyframes fIn{from{opacity:0}}@keyframes fOut{to{opacity:0}}
@keyframes pIn{from{opacity:0;transform:translateY(12px) scale(.97)}}@keyframes pOut{to{opacity:0;transform:translateY(8px) scale(.98)}}
.toast{animation:tIn .26s cubic-bezier(.2,.8,.3,1) both}
@keyframes tIn{from{opacity:0;transform:translate(-50%,-40%) scale(.96)}}
.xb{border:0;background:none;width:30px;height:30px;border-radius:8px;display:grid;place-items:center;color:var(--text2)}.xb:hover{background:var(--side)}
.modal.rq,.modal.fixm{max-width:440px;padding:26px 24px 22px}
.qmini{display:flex;align-items:center;gap:12px;background:var(--side);border-radius:12px;padding:10px 12px}
.qmini .pw{width:230px;height:84px;overflow:hidden;background:#fff;border-radius:6px;flex:none;pointer-events:none}.qmini .paper{width:230px;padding:8px 10px;font-size:11px;line-height:1.5}
.qmini span{font-weight:700;font-size:13px}
.note{margin-top:12px;font-size:12.5px;line-height:1.65;color:var(--text);background:var(--tint);border-radius:10px;padding:12px 14px}
.note b{color:var(--navy)}
.seg{display:flex;gap:6px}.seg button{flex:1;height:38px;border:1px solid var(--line2);background:#fff;border-radius:8px;font-size:13px;transition:all .15s}
.seg button.on{border-color:var(--navy);background:var(--tint);color:var(--navy);font-weight:700}
.opt{font-size:11px;font-weight:500;color:#39406A}
.ta{position:relative}.ta textarea{width:100%;height:150px;resize:none;border:1px solid var(--line2);border-radius:10px;padding:12px 14px 26px;font:13px/1.6 var(--ui);color:var(--text);transition:border-color .15s,box-shadow .15s}
.ta textarea:focus{outline:0;border-color:var(--navy);box-shadow:0 0 0 3px rgba(10,23,78,.08)}
.ta textarea::placeholder{color:#A6A5AE}
.ta .cnt{position:absolute;right:12px;bottom:9px;font-size:11px;color:#39406A}
.guide{background:var(--side);border-radius:12px;padding:14px 16px}
.guide>b{display:flex;align-items:center;gap:8px;font-size:13.5px}
.guide .qmk{width:20px;height:20px;border-radius:50%;background:var(--ink);color:#fff;display:grid;place-items:center;font-size:12px}
.guide ul{margin:8px 0 0;padding-left:18px;font-size:12px;line-height:1.7;color:var(--text)}
.cs{position:relative}
.csb{width:100%;height:44px;display:flex;align-items:center;justify-content:space-between;border:1px solid var(--line2);background:#fff;border-radius:10px;padding:0 14px;font-size:13.5px;color:#A6A5AE;transition:border-color .15s,box-shadow .15s}
.csb.set{color:var(--text)}
.csb svg{width:16px;height:16px;color:var(--text2);transition:transform .2s}
.cs.open .csb{border-color:#3B4BD8;box-shadow:0 0 0 1px #3B4BD8}
.cs.open .csb svg{transform:rotate(180deg)}
.csl{position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:5;background:#fff;border-radius:12px;box-shadow:0 12px 36px rgba(20,20,40,.18);max-height:320px;overflow:auto;padding:6px 0;opacity:0;transform:translateY(-6px);pointer-events:none;transition:opacity .16s,transform .16s}
.cs.open .csl{opacity:1;transform:none;pointer-events:auto}
.csl button{display:block;width:100%;text-align:left;border:0;background:none;height:40px;padding:0 16px;font-size:13.5px;color:var(--text);transition:background .1s}
.csl button:hover{background:var(--side)}.csl button.on{background:var(--tint);color:var(--navy);font-weight:700}
.ex{background:#FDF0F1;color:var(--red);font-size:12.5px;font-weight:600;border-radius:10px;padding:12px 14px;margin-bottom:10px;text-align:center}
.ex.flash{animation:flash .5s ease}
@keyframes flash{from{background:#FBD9DD}}
.warn{margin:14px 0 0;padding-left:16px;color:var(--red);font-size:11.5px;line-height:1.75}
.qref{margin-top:10px;font-size:11.5px;color:#39406A}
.spin{display:inline-block;width:16px;height:16px;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite;vertical-align:middle}
.chp.rqd{background:#FFF4D6;color:#8A6400}
/* 화면 전환 */
.busy-bar{position:fixed;top:0;left:0;right:0;height:3px;z-index:9998;pointer-events:none;opacity:0;transition:opacity .2s;background:linear-gradient(90deg,transparent 0%,#A5CE3A 30%,#2F4A8F 60%,transparent 100%);background-size:50% 100%;background-repeat:no-repeat}
.busy-bar.on{opacity:1;animation:busy-slide 1.1s ease-in-out infinite}
@keyframes busy-slide{0%{background-position:-50% 0}100%{background-position:150% 0}}
#main.enter>*{animation:up .32s cubic-bezier(.2,.8,.3,1) both}
#panel.enter>*{animation:fIn .25s ease both}
@keyframes up{from{opacity:0;transform:translateY(8px)}}
#main.enter .qc{animation:up .34s cubic-bezier(.2,.8,.3,1) both}
#main.enter .qc:nth-child(2){animation-delay:.03s}#main.enter .qc:nth-child(3){animation-delay:.06s}#main.enter .qc:nth-child(4){animation-delay:.09s}#main.enter .qc:nth-child(5){animation-delay:.12s}#main.enter .qc:nth-child(6){animation-delay:.15s}#main.enter .qc:nth-child(n+7){animation-delay:.18s}
.qc{transition:border-color .15s,box-shadow .2s,transform .2s}
.qc:hover{box-shadow:0 6px 18px rgba(20,20,40,.07)}
.gnav a,.htabs button,.node,.slist a,.btn-n,.btn-c,.btn-p,.chp,.dbt .rw{transition:background-color .15s,color .15s,border-color .15s,transform .1s}
.btn-n:active:not(:disabled),.btn-c:active,.btn-p:active{transform:scale(.97)}
.sk{border-radius:8px;background:linear-gradient(90deg,#EFEEF2 0%,#F7F6F9 40%,#EFEEF2 80%);background-size:200% 100%;animation:shim 1.1s linear infinite}
@keyframes shim{from{background-position:100% 0}to{background-position:-100% 0}}
.sk-h{height:22px;width:160px;margin-bottom:14px}.sk-l{height:44px;width:min(680px,100%);margin-bottom:26px}
.skg{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(330px,100%),1fr));gap:16px}.skg.sc{grid-template-columns:repeat(auto-fill,minmax(min(240px,100%),1fr))}
.skc{border:1px solid var(--line);border-radius:14px;padding:14px;display:flex;flex-direction:column;gap:10px}
.sk-a{height:16px;width:40%}.sk-b{height:170px}.sk-c{height:12px;width:70%}
/* 끌어서 고르기 네모 */
.marquee{position:absolute;z-index:40;border:1.5px solid #2F4A8F;background:rgba(47,74,143,.08);border-radius:4px;pointer-events:none}
body.marqueeing,body.marqueeing *{user-select:none!important;cursor:crosshair!important}
/* 고를 때는 테두리만 부드럽게(번쩍임 없음) */
.qc.on{transition:border-color .12s,background-color .12s}
.circk{transition:background-color .12s,border-color .12s}
/* 카드 크기 바 */
.sizer input[type=range]{accent-color:var(--navy)}
.menu.cardmenu button.off{opacity:1}.menu.cardmenu button.off .mi{stroke:#9AA0B8}.menu.cardmenu button.off .mt b{color:#5A6185}
.hintl{font-size:11.5px;color:#39406A;margin-top:6px}
.seg button:disabled{background:#F4F4F7;color:#9AA0B8;border-color:#E6E5EA;cursor:not-allowed}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01s!important;transition:none!important}.busy-bar.on{animation-duration:2.4s!important}}

/* 4판: 회색 글자 → 진한 남색(휴리스틱 '회색 글자 금지') */
:root{--text2:#2E3A66;--hint:#3D4870}
.gnav a .own{margin-left:auto;font-style:normal;font-size:10px;font-weight:700;color:var(--navy);background:#E6E9F3;border-radius:4px;padding:1px 5px}
.gnav a.on .own{background:rgba(255,255,255,.18);color:#fff}
.own{font-size:11px;font-weight:700;color:var(--navy);background:#E6E9F3;border-radius:4px;padding:2px 6px;vertical-align:middle;margin-left:6px}
/* 홈 위 띠: 찾기가 주인공 */
.hb4{background:var(--navy);color:#fff}
.hb4in{max-width:1200px;margin:0 auto;padding:44px 0 34px;display:flex;flex-direction:column;gap:16px}
.hb4t b{display:block;font:700 26px/1.3 var(--ui)}.hb4t span{font-size:15px;color:#D7DCEE}
.hb4 .sbox{background:#fff;border:0}.hb4 .btn-n{background:var(--lgreen);color:var(--navy)}
.hb4s{display:flex;gap:22px;font-size:13.5px;color:#D7DCEE;flex-wrap:wrap;align-items:baseline}.hb4s b{font-size:17px;color:#fff;margin-right:2px}
.hb4d{font-size:11.5px;margin-left:auto}
.hbody.h4{padding-top:36px}
.h4n{font-size:12.5px;color:var(--text2);margin:10px 0 0}
.sch{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}
.schb{border:1px solid var(--line);background:#fff;border-radius:12px;padding:14px 14px 12px;text-align:left;display:flex;flex-direction:column;gap:3px;cursor:pointer;transition:border-color .15s,box-shadow .2s}
.schb:hover{border-color:var(--navy);box-shadow:0 4px 14px rgba(10,23,78,.08)}
.schb b{font-size:14px;color:var(--navy)}.schb span{font-size:11.5px;color:var(--text2)}
.schb.off{background:var(--side);border-style:dashed}.schb.off b{color:var(--text)}
.rql{list-style:none;margin:0;padding:0;border:1px solid var(--line);border-radius:14px;overflow:hidden}
.rql li{display:flex;align-items:center;gap:10px;padding:13px 16px;font-size:13px}.rql li+li{border-top:1px solid var(--line)}
.rk{font-size:11px;font-weight:700;color:var(--navy);background:#E6E9F3;border-radius:4px;padding:2px 6px;white-space:nowrap}
.rw2{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
i{font-style:normal}.rw2 i,.tt2 i{font-size:10.5px;color:#8A6400;background:#FFF4D6;border-radius:3px;padding:0 4px;margin-left:4px}
.stc{font-size:11px;font-weight:700;border-radius:999px;padding:3px 9px;white-space:nowrap}
.stc.s-a{background:#ECEBEF;color:var(--text)}.stc.s-b{background:#FFF4D6;color:#8A6400}.stc.s-c{background:#E2F0D6;color:#3F6B1E}
/* 신청 현황 */
.flow{display:flex;align-items:center;gap:12px}
.flow div{flex:1;max-width:200px;border:1px solid var(--line);border-radius:12px;padding:14px 18px;font-size:12.5px;color:var(--text2)}
.flow div b{display:block;font-size:24px;color:var(--text);margin-bottom:2px}
.flow div.on{border-color:var(--navy)}.flow div.on b{color:var(--navy)}
.flow>span{color:var(--text2)}
.rqt{border:1px solid var(--line);border-radius:12px;overflow:hidden}
.rqt .hd,.rqt .rw{display:grid;grid-template-columns:100px minmax(0,1fr) 90px 90px 70px 100px;align-items:center;gap:8px;padding:0 16px}
.rqt:has(.hd span:nth-child(7)) .hd,.rqt:has(.hd span:nth-child(7)) .rw{grid-template-columns:100px minmax(0,1fr) 100px 90px 90px 70px 100px}
.rqt .hd{height:34px;font-size:11px;color:var(--text2);border-bottom:1px solid var(--line);background:var(--side)}
.rqt .rw{min-height:54px;font-size:13px;border-bottom:1px solid var(--line)}.rqt .rw:last-child{border-bottom:0}
.rqt .tt2{font-weight:600}
.btn-g.sm{height:30px;font-size:11.5px;padding:0 10px}
/* 자료 관리 */
.lhead{display:flex;align-items:center;justify-content:space-between}
.pipe{border:1px solid var(--line);border-radius:12px;overflow:hidden}
.prw{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 18px;flex-wrap:wrap}.prw+.prw{border-top:1px solid var(--line)}
.prw>div:first-child{display:flex;flex-direction:column;gap:2px;min-width:0}.prw b{font-size:13.5px}.prw>div:first-child span{font-size:11.5px;color:var(--text2)}
.steps{display:flex;align-items:center;gap:6px;font-size:11.5px}
.steps span{border:1px solid var(--line2);border-radius:999px;padding:3px 10px;color:var(--text2)}
.steps span.ok{background:var(--navy);border-color:var(--navy);color:#fff}
.steps span.now{border-color:var(--navy);color:var(--navy);font-weight:700;box-shadow:0 0 0 3px rgba(10,23,78,.08)}
.steps i{width:14px;height:1px;background:var(--line2)}
.hb4 .sbox input{color:var(--text)}.hb4 .sbox input::placeholder{color:#5A6185}

/* 5판 홈: 상자 대신 여백과 가는 선, 강조는 '이어서 편집' 한 곳 */
.h5{max-width:1120px;margin:0 auto;padding:56px 40px 64px;width:100%}
.h5h{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;flex-wrap:wrap;padding-bottom:28px;border-bottom:1px solid var(--line)}
.h5d{font-size:13px;color:var(--text2);margin-bottom:8px;letter-spacing:.01em}
.h5h h1{margin:0;font:700 30px/1.4 var(--logo);letter-spacing:.02em;color:var(--navy);text-wrap:balance}
.h5h h1 em{font-style:normal;background:linear-gradient(transparent 62%,rgba(165,206,58,.55) 62%)}
.h5s{display:flex;align-items:center;gap:8px;width:min(420px,100%);height:46px;border:1px solid var(--line2);border-radius:12px;padding:0 6px 0 14px;background:#fff;transition:border-color .15s,box-shadow .15s}
.h5s:focus-within{border-color:var(--navy);box-shadow:0 0 0 3px rgba(10,23,78,.07)}
.h5s svg{width:18px;height:18px;fill:none;stroke:var(--navy);stroke-width:2;flex:none}
.h5s input{flex:1;min-width:0;border:0;outline:0;font:14px var(--ui);color:var(--text);background:none}
.h5s input::placeholder{color:#5A6185}
.h5s button{border:0;background:#EEF0F6;color:var(--navy);font:600 13px var(--ui);height:34px;padding:0 14px;border-radius:8px}
.h5k{display:block;font-size:12px;font-weight:700;color:var(--navy);letter-spacing:.04em;margin-bottom:10px}
.h5c{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:48px;padding:36px 0 40px;border-bottom:1px solid var(--line)}
.h5cur{display:flex;gap:28px;align-items:center;cursor:pointer;min-width:0}
.h5th{width:240px;height:168px;flex:none;border:1px solid var(--line);border-radius:10px;background:#fff;overflow:hidden;position:relative;box-shadow:7px 7px 0 -1px #fff,7px 7px 0 0 var(--line2),0 14px 30px -18px rgba(10,23,78,.35);transition:transform .25s,box-shadow .25s}
.h5th::before{content:"";position:absolute;inset:0 0 auto;height:4px;background:var(--navy)}
.h5th .paper{padding:20px 18px;font-size:10.5px;line-height:1.6;pointer-events:none}
.h5cur:hover .h5th{transform:translateY(-2px)}
.h5ci{min-width:0}.h5ci b{display:block;font-size:22px;font-weight:700;color:var(--text);margin-bottom:8px}
.h5m{font-size:13px;color:var(--text2)}
.h5bt{display:flex;gap:8px;margin-top:20px}
.h5bt button{height:42px;padding:0 20px;border-radius:10px;font:600 14px var(--ui);transition:transform .1s,background-color .15s}
.h5bt .b1{border:0;background:var(--navy);color:#fff}.h5bt .b1:hover{background:#16246A}
.h5bt .b2{border:1px solid var(--line2);background:#fff;color:var(--navy)}.h5bt .b2:hover{border-color:var(--navy)}
.h5bt button:active{transform:scale(.97)}
.h5new{display:flex;flex-direction:column;gap:2px;border-left:1px solid var(--line);padding-left:32px}
.h5new button{display:flex;align-items:center;gap:12px;border:0;background:none;text-align:left;padding:10px 8px;margin:0 -8px;border-radius:10px;cursor:pointer;transition:background-color .15s}
.h5new button:hover{background:var(--tint)}
.h5new svg{width:20px;height:20px;fill:none;stroke:var(--navy);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none}
.h5new b{display:block;font-size:14px;color:var(--text)}.h5new small{font-size:12px;color:var(--text2)}
.h5g{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px;padding-top:36px}
.h5g h3{margin:0 0 12px;font-size:15px;font-weight:700;color:var(--text);display:flex;align-items:baseline;gap:8px}
.h5g h3 span{font-size:12.5px;font-weight:600;color:var(--navy2)}
.h5g h4{margin:22px 0 6px;font-size:12px;font-weight:700;color:var(--text2)}
.h5l{list-style:none;margin:0;padding:0}
.h5l li{display:flex;align-items:center;gap:12px;padding:12px 0;border-top:1px solid var(--line)}
.h5l li:last-child{border-bottom:1px solid var(--line)}
.h5l.sm li{padding:9px 0}
.h5l .t{flex:1;min-width:0;display:flex;flex-direction:column}
.h5l .t b{font-size:13.5px;font-weight:600;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.h5l .t small{font-size:12px;color:var(--text2)}
.h5l .n{font-size:13px;font-weight:600;color:var(--navy)}
.h5l li.lk{cursor:pointer;transition:background-color .15s}.h5l li.lk:hover{background:var(--tint);margin:0 -10px;padding-left:10px;padding-right:10px}
.h5l button{border:1px solid var(--line2);background:#fff;color:var(--navy);font:600 12px var(--ui);height:30px;padding:0 12px;border-radius:8px;white-space:nowrap}
.h5l button:hover{border-color:var(--navy)}
.dot{width:8px;height:8px;border-radius:50%;background:#C9CDDB;flex:none}.dot.ok{background:#009A2E}.dot.mk{background:#F5D042}
.h5w{font-size:12.5px;line-height:1.7;color:var(--text2);margin:14px 0 0}.h5w b{color:var(--text);margin-right:4px}
.h5tl{list-style:none;margin:0;padding:0;border-left:2px solid var(--line);margin-left:4px}
.h5tl li{position:relative;padding:0 0 18px 18px;font-size:13.5px;color:var(--text);display:flex;flex-direction:column;gap:2px}
.h5tl li::before{content:"";position:absolute;left:-6px;top:5px;width:10px;height:10px;border-radius:50%;background:#fff;border:2px solid var(--navy)}
.h5tl time{font-size:12px;font-weight:600;color:var(--navy2)}
.h5more{display:inline-block;margin-top:14px;font-size:12.5px;font-weight:600;color:var(--navy);text-decoration:none}
.h5more:hover{text-decoration:underline}
.h5f{margin:40px 0 0;font-size:12px;color:var(--text2)}
@media (max-width:1100px){.h5c{grid-template-columns:1fr}.h5new{border-left:0;padding-left:0}.h5g{grid-template-columns:1fr;gap:32px}}
@media (max-width:640px){.h5{padding:32px 16px}.h5cur{flex-direction:column;align-items:flex-start}.h5th{width:100%}}

/* 6판: 학원 DB 표·숏컷·학원 자료·찾기 상세·홈 빠른 일 */

/* 왼쪽 메뉴 */
.gsep{font-size:11px;font-weight:700;color:var(--navy2);letter-spacing:.06em;padding:16px 12px 6px}
.gnav .avatar{width:auto;height:auto;background:none;margin:0 0 26px;display:block}
.me4{display:flex;align-items:center;gap:9px;width:100%;border:0;background:none;padding:6px;border-radius:10px;text-align:left;cursor:pointer;transition:background-color .15s}
.me4:hover{background:var(--tint2)}
.me4 .mav{width:32px;height:32px;border-radius:9px;background:var(--navy);color:#fff;font:700 12px var(--ui);display:grid;place-items:center;flex:none}
.me4>span:nth-child(2){display:flex;flex-direction:column;min-width:0;flex:1}
.me4 b{font-size:13px;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.me4 small{font-size:11px;color:var(--text2)}
.me4 svg{width:14px;height:14px;fill:none;stroke:var(--navy);stroke-width:2;flex:none}
.menu .mhd [data-quota]{font-weight:600;color:var(--navy)}

/* 왼쪽 거르기 */
.panel>.btn-p{width:100%;margin-bottom:6px}
.two6{display:grid;grid-template-columns:1fr auto;gap:6px;margin-bottom:6px}.two6 .btn-p{width:100%}
.f6{display:flex;flex-direction:column}
.f6 .fl{font-size:12px;font-weight:700;color:var(--text);margin:18px 0 8px}
.seg6{display:flex;background:var(--gbtn);border-radius:9px;padding:3px;gap:2px}
.seg6 button{flex:1;border:0;background:none;height:32px;border-radius:7px;font:500 12.5px var(--ui);color:var(--text);cursor:pointer;transition:background-color .15s,color .15s}
.seg6 button.on{background:#fff;color:var(--navy);font-weight:700;box-shadow:0 1px 3px rgba(10,23,78,.12)}
.seg6.w{flex-wrap:wrap}.seg6.w button{flex:1 0 auto;padding:0 10px}
.opt6{display:flex;flex-direction:column;gap:1px}
.opt6 button{display:flex;justify-content:space-between;align-items:center;border:0;background:none;height:34px;padding:0 10px;border-radius:8px;font:500 13px var(--ui);color:var(--text);cursor:pointer;text-align:left;transition:background-color .15s}
.opt6 button span{font-size:12px;color:var(--text2)}
.opt6 button:hover{background:var(--tint2)}
.opt6 button.on{background:var(--navy);color:#fff;font-weight:600}.opt6 button.on span{color:#D7DCEE}
.chip6{display:flex;flex-wrap:wrap;gap:6px}
.chip6 button{border:1px solid var(--line2);background:#fff;height:30px;padding:0 12px;border-radius:999px;font:500 12.5px var(--ui);color:var(--text);cursor:pointer;transition:border-color .15s,background-color .15s,color .15s}
.chip6 button:hover{border-color:var(--navy)}
.chip6 button.on{background:var(--navy);border-color:var(--navy);color:#fff}
.f6f{display:flex;flex-direction:column;gap:6px;margin-top:22px;padding-top:14px;border-top:1px solid var(--line);font-size:12px;color:var(--text2)}
.lnk{border:0;background:none;padding:0;font:600 12.5px var(--ui);color:var(--navy);text-decoration:underline;text-underline-offset:3px;cursor:pointer;text-align:left}
.lnk:hover{color:var(--navy2)}

/* 위 띠: 제목 + 찾기 + 정렬 */
.tb6{display:flex;align-items:center;gap:12px;margin-bottom:20px;flex-wrap:wrap}
.tb6 h3{margin:0 auto 0 0;font-size:18px;font-weight:700;color:var(--text)}.tb6 h3 b{color:var(--navy)}
.sb6{display:flex;align-items:center;gap:8px;width:min(340px,100%);height:40px;border:1px solid var(--line2);border-radius:10px;background:#fff;padding:0 12px;transition:border-color .15s,box-shadow .15s}
.sb6:focus-within{border-color:var(--navy);box-shadow:0 0 0 3px rgba(10,23,78,.07)}
.sb6 svg{width:16px;height:16px;flex:none;fill:none;stroke:var(--navy);stroke-width:2}
.sb6 input{flex:1;min-width:0;border:0;outline:0;font:13.5px var(--ui);background:none;color:var(--text)}
.sb6 input::placeholder{color:#5A6185}

/* 숏컷 카드 */
.grid6{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px}
.sc6{border:1px solid var(--line);border-radius:14px;background:#fff;overflow:hidden;display:flex;flex-direction:column;transition:border-color .15s,box-shadow .2s,transform .2s}
.sc6:hover{border-color:var(--line2);box-shadow:0 10px 26px -14px rgba(10,23,78,.3)}
.sc6i{position:relative;aspect-ratio:16/10;background:#F7F7F4;border-bottom:1px solid var(--line);overflow:hidden;max-width:100%}
.sc6i[data-scv]{cursor:zoom-in}
.sc6i img{width:100%;height:100%;object-fit:cover;object-position:top left;display:block;transition:transform .35s}
.sc6:hover .sc6i img{transform:scale(1.03)}
.sc6i .stc{position:absolute;top:10px;left:10px}
.sc6w{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;font-size:12.5px;color:var(--text2);background:repeating-linear-gradient(-45deg,#F7F7F4 0 10px,#F1F1EC 10px 20px)}
.spin6{width:22px;height:22px;border-radius:50%;border:2.5px solid #D7DCEE;border-top-color:var(--navy);animation:spin 1s linear infinite}
.sc6b{padding:14px 16px 14px;display:flex;flex-direction:column;gap:4px;flex:1}
.sc6m{font-size:12px;color:var(--text2)}.sc6m i{font-size:10.5px;color:#8A6400;background:#FFF4D6;border-radius:3px;padding:0 4px}
.sc6b>b{font-size:14.5px;font-weight:700;color:var(--text);line-height:1.45}
.sc6l{font-size:12px;color:var(--navy);font-weight:600}
.sc6a{display:flex;gap:6px;margin-top:auto;padding-top:10px;align-items:center}
.sc6a button{height:32px;border-radius:8px;font:600 12.5px var(--ui);cursor:pointer;transition:background-color .15s,border-color .15s,transform .1s}
.sc6a button:active{transform:scale(.97)}
.sc6a .b1{border:0;background:var(--navy);color:#fff;padding:0 14px}.sc6a .b1:hover{background:var(--navy2)}
.sc6a .b2{border:1px solid var(--line2);background:#fff;color:var(--navy);padding:0 12px}.sc6a .b2:hover{border-color:var(--navy)}
.sc6a .more{margin-left:auto;width:32px;border:0;background:none;display:grid;place-items:center;border-radius:8px}
.sc6a .more:hover{background:var(--tint2)}
.sc6a .more svg{width:16px;height:16px;fill:var(--navy)}
.empty6{border:1px dashed var(--line2);border-radius:14px;padding:48px 20px;text-align:center;font-size:14px;color:var(--text);display:flex;flex-direction:column;align-items:center;gap:14px}

/* 숏컷 크게 보기 + 워터마크 */
.scbig{position:relative;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#F7F7F4;max-height:60vh;overflow-y:auto}
.scbig img{width:100%;display:block}
.wm6{position:absolute;inset:0;pointer-events:none;background-repeat:repeat}
.scinfo{display:flex;flex-wrap:wrap;gap:6px 18px;font-size:13px;color:var(--text);margin:14px 0 4px}.scinfo b{color:var(--navy)}

/* 새 문항 신청 */
.drop6{display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center;border:1.5px dashed var(--line2);border-radius:12px;padding:22px 16px;background:var(--tint);cursor:pointer;transition:border-color .15s,background-color .15s}
.drop6:hover,.drop6.over{border-color:var(--navy);background:#EDEFF7}
.drop6 b{font-size:14px;color:var(--navy)}.drop6>span{font-size:12.5px;color:var(--text2);line-height:1.6}
.drop6 kbd{font:600 11px var(--ui);border:1px solid var(--line2);border-bottom-width:2px;border-radius:4px;padding:0 4px;background:#fff;color:var(--text)}
.drop6 .b2{margin-top:6px;border:1px solid var(--navy);background:#fff;color:var(--navy);font:600 12px var(--ui);height:30px;padding:0 12px;border-radius:8px;cursor:pointer}
.pk6{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.pk6:empty{display:none}
.pf6{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:10px;padding:4px 4px 4px 4px;background:#fff;max-width:100%;animation:pIn .2s ease both}
.pf6 img,.pf6 i{width:44px;height:34px;border-radius:6px;object-fit:cover;object-position:top left;flex:none;background:#FDECEE;color:var(--red);font:700 10px/34px var(--ui);text-align:center}
.pf6 b{font-size:12px;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:180px}
.pf6 button{width:24px;height:24px;border:0;background:none;border-radius:6px;display:grid;place-items:center;cursor:pointer}
.pf6 button:hover{background:var(--tint2)}.pf6 button svg{width:12px;height:12px;stroke:var(--navy)}
.kfs{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:10px;margin-top:12px}.kfs:empty{display:none}
.kf6{display:flex;flex-direction:column;gap:5px;font-size:12px;font-weight:600;color:var(--text)}
.kf6 input,.tin{height:38px;border:1px solid var(--line2);border-radius:8px;padding:0 10px;font:13px var(--ui);color:var(--text);background:#fff;outline:0;min-width:0;width:100%;box-sizing:border-box;transition:border-color .15s,box-shadow .15s}
.kf6 input:focus,.tin:focus{border-color:var(--navy);box-shadow:0 0 0 3px rgba(10,23,78,.07)}
.kf6 input::placeholder,.tin::placeholder{color:#5A6185}
.kf6 .sel select{height:38px}
.dup6{margin-top:8px;font-size:12.5px;color:#8A6400;background:#FFF4D6;border-radius:8px;padding:8px 12px;line-height:1.6}.dup6 b{color:var(--text)}

/* 학원 자료 줄 */
.pl6{border-top:1px solid var(--line)}
.pr6{display:flex;align-items:center;gap:16px;padding:16px 4px;border-bottom:1px solid var(--line);transition:background-color .15s}
.pr6:hover{background:var(--tint)}
.pth6{width:40px;height:48px;flex:none;border:1px solid var(--line);border-radius:6px;background:#fff;position:relative;display:grid;place-items:end center;padding-bottom:6px}
.pth6::before{content:"";position:absolute;top:8px;left:8px;right:8px;height:14px;background:repeating-linear-gradient(#E6E5EA 0 2px,transparent 2px 5px)}
.pth6 i{font:700 9.5px var(--ui);color:var(--red)}
.pt6{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}
.pt6>b{font-size:14.5px;font-weight:700;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pt6 .lnk{font-size:12px}
.pr6 .chp{flex:none}
.btn-n.sm6,.btn-g.sm6{height:34px;padding:0 14px;font-size:12.5px;flex:none}

/* 학원 DB 표: 제목칸 넉넉히, 줄바꿈 없이 */
.db6{border:1px solid var(--line);border-radius:14px;overflow-x:auto;background:#fff}
.db6 .hd,.db6 .rw{display:grid;grid-template-columns:minmax(180px,1.4fr) 76px 200px minmax(120px,1fr) auto;align-items:center;gap:14px;padding:0 18px;min-width:820px}
.db6 .hd{height:40px;font-size:12px;font-weight:700;color:var(--text);background:var(--side);border-bottom:1px solid var(--line)}
.db6 .rw{min-height:72px;border-bottom:1px solid var(--line);transition:background-color .15s}
.db6 .rw:last-child{border-bottom:0}.db6 .rw:hover{background:var(--tint)}
.db6 .t{display:flex;flex-direction:column;gap:3px;min-width:0}
.db6 .t b{font-size:14.5px;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.db6 .t small{font-size:12px;color:var(--text2)}
.db6 .n{font-size:18px;font-weight:700;color:var(--navy);display:flex;flex-direction:column;line-height:1.2}.db6 .n small{font-size:11px;font-weight:500;color:var(--text2)}
.lv6{display:flex;gap:10px}
.lv6 i{font-size:12.5px;color:var(--text);display:inline-flex;align-items:center;gap:5px;white-space:nowrap}
.lv6 i::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--c)}
.db6 .u{font-size:12.5px;color:var(--text);line-height:1.5}
.db6 .a{display:flex;gap:6px;justify-content:flex-end}
.db6 .a .btn-g.sm{height:34px;font-size:12.5px;padding:0 12px}

/* 찾기: 문제 상세보기(오른쪽 서랍) */
.qc[data-id]{cursor:pointer}
.dim.side6{place-items:stretch end;padding:0}
.drw{width:min(520px,100vw);height:100vh;background:#fff;overflow-y:auto;padding:22px 24px 0;display:flex;flex-direction:column;box-shadow:-20px 0 60px rgba(10,23,78,.18);animation:drwIn .28s cubic-bezier(.2,.8,.3,1) both}
.dim.out .drw{animation:drwOut .18s ease both}
@keyframes drwIn{from{transform:translateX(40px);opacity:0}to{transform:none;opacity:1}}
@keyframes drwOut{to{transform:translateX(40px);opacity:0}}
.dd6{display:grid;grid-template-columns:44px 1fr;gap:6px 12px;margin:4px 0 6px;font-size:13px}
.dd6 dt{font-weight:700;color:var(--navy)}.dd6 dd{margin:0;color:var(--text)}
.dsec{padding:16px 0;border-top:1px solid var(--line);font-size:13.5px;color:var(--text);line-height:1.7}
.dh{font-size:12px;font-weight:700;color:var(--navy);margin-bottom:8px;display:flex;align-items:center;gap:8px;letter-spacing:.02em}
.dh .lvd{font-weight:600;font-size:11.5px}
.dh .l-쉬움{color:var(--easy)}.dh .l-보통{color:var(--mid)}.dh .l-어려움{color:var(--hard)}
.dpp{border:1px solid var(--line);border-radius:10px;padding:18px;font-size:13px}
.dans{font-size:20px;font-weight:700;color:var(--navy)}
.dno{color:var(--text);display:flex;flex-wrap:wrap;gap:6px 12px;align-items:center}.dno b{color:#3F6B1E;font-size:12.5px}
.dsc{display:flex;align-items:center;gap:12px;width:100%;border:1px solid var(--line);border-radius:10px;padding:8px;background:#fff;cursor:pointer;text-align:left;transition:border-color .15s}
.dsc:hover{border-color:var(--navy)}
.dsc img{width:96px;height:60px;object-fit:cover;object-position:top left;border-radius:6px;flex:none}
.dsc span{display:flex;flex-direction:column;font-size:13px;color:var(--text)}.dsc span b{color:var(--navy);font-size:12.5px}
.dft{position:sticky;bottom:0;margin:auto -24px 0;padding:14px 24px 18px;background:#fff;border-top:1px solid var(--line);display:flex;gap:8px;justify-content:flex-end}

/* 고른 문항 막대 */
.selbar{position:fixed;left:50%;bottom:max(24px,env(safe-area-inset-bottom,0px));transform:translateX(-50%);z-index:45;display:flex;align-items:center;gap:10px;background:var(--navy);color:#fff;border-radius:14px;padding:8px 10px 8px 20px;box-shadow:0 16px 40px -12px rgba(10,23,78,.55);animation:sbIn .25s cubic-bezier(.2,.8,.3,1) both;max-width:calc(100vw - 32px);flex-wrap:wrap}
@keyframes sbIn{from{transform:translate(-50%,16px);opacity:0}to{transform:translateX(-50%);opacity:1}}
.selbar>b{font-size:14px;margin-right:6px}
.selbar .btn-n{background:var(--lgreen,#A5CE3A);color:var(--navy);height:38px}
.selbar .b2{border:1px solid rgba(255,255,255,.35);background:none;color:#fff;height:38px;padding:0 14px;border-radius:8px;font:600 13px var(--ui);cursor:pointer;max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.selbar .b2:hover{border-color:#fff}
.selbar .lnk{color:#D7DCEE;margin:0 6px}

/* 홈: 자주 하는 일 */
.qa6{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:0;border-bottom:1px solid var(--line)}
.qa6 button{display:flex;align-items:center;gap:14px;border:0;background:none;text-align:left;padding:22px 20px 22px 0;cursor:pointer;position:relative;transition:background-color .15s}
.qa6 button+button{padding-left:22px;border-left:1px solid var(--line)}
.qa6 button:hover{background:var(--tint)}
.qa6 svg{width:38px;height:38px;padding:8px;border-radius:10px;background:var(--tint2);fill:none;stroke:var(--navy);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none;transition:background-color .15s,stroke .15s}
.qa6 button:first-child svg{background:var(--navy);stroke:#fff}
.qa6 button:hover svg{background:var(--navy);stroke:#fff}
.qa6 b{display:block;font-size:15px;color:var(--text)}.qa6 small{font-size:12px;color:var(--text2)}
.h5h .h5d [data-quota]{font-weight:600;color:var(--navy)}
.h6n{padding:34px 0 38px;border-bottom:1px solid var(--line)}
.h6h{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:14px}
.h6h h3{margin:0;font-size:15px;font-weight:700;color:var(--text)}
.h6s{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.h6c{display:flex;flex-direction:column;gap:6px;min-width:0}
.h6i{border:1px solid var(--line);border-radius:10px;overflow:hidden;padding:0;background:#F7F7F4;aspect-ratio:16/10;cursor:zoom-in;max-width:100%;transition:border-color .15s,box-shadow .2s}
.h6i:hover{border-color:var(--navy);box-shadow:0 8px 20px -12px rgba(10,23,78,.35)}
.h6i img{width:100%;height:100%;object-fit:cover;object-position:top left;display:block}
.h6c>b{font-size:13.5px;font-weight:600;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.h6a{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:12px;color:var(--text2)}
.h6a button{border:0;background:none;color:var(--navy);font:600 12px var(--ui);padding:0;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.h5g.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.h5g.two h4{font-size:15px;color:var(--text);margin:28px 0 12px}
@media (max-width:1100px){.h6s{grid-template-columns:repeat(2,minmax(0,1fr))}.h5g.two{grid-template-columns:1fr}.qa6 button+button{border-left:0;padding-left:0}}

/* 7판: 쪽 그림(A4), 책처럼 넘겨 보기, 바로 인쇄, 홈 선반 */
.pgw{width:calc(794px * var(--z));height:calc(1123px * var(--z));position:relative;overflow:hidden;flex:none;max-width:none}
.pg7{position:absolute;left:0;top:0;width:794px;height:1123px;background:#fff;transform:scale(var(--z));transform-origin:0 0;overflow:hidden}
.pim{width:794px;height:1123px;display:block;object-fit:contain;max-width:none}
.pi7{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linejoin:round;vertical-align:-3px;margin-right:5px}

/* 시험지 쪽 */
.ex7{position:absolute;inset:0;padding:54px 50px 60px;display:flex;flex-direction:column;font-family:var(--ui);color:#111}
.eh7{display:flex;justify-content:space-between;align-items:flex-end;border-bottom:2.5px solid #0A174E;padding-bottom:12px;margin-bottom:18px}
.ehl{display:flex;flex-direction:column;gap:2px}
.lg7{font:700 13px var(--logo);color:#0A174E;letter-spacing:.06em}
.ehl b{font:700 24px/1.3 var(--logo);color:#0A174E}.ehl small{font-size:12px;color:#2E3A66}
.ehr{display:flex;gap:6px}.ehr span{width:74px;height:34px;border:1px solid #9AA0BC;border-radius:4px;font-size:10.5px;color:#2E3A66;padding:3px 6px}
.eh7s{display:flex;justify-content:space-between;font-size:11px;color:#2E3A66;border-bottom:1px solid #C9CDDB;padding-bottom:6px;margin-bottom:18px}
.ec7{flex:1;display:grid;grid-template-columns:1fr 1fr;gap:0;min-height:0}
.ec7>div{display:flex;flex-direction:column;padding:0 18px;min-height:0;overflow:hidden}
.ec7>div:first-child{border-right:1px solid #C9CDDB;padding-left:0}.ec7>div:last-child{padding-right:0}
.eq7{flex:1 1 0;min-height:0;overflow:hidden;display:flex;gap:8px;padding-bottom:14px}
.en7{font:700 17px var(--logo);color:#0A174E;flex:none;min-width:22px}
.eq7 .paper{font-size:12.5px;line-height:1.75;min-width:0}
.eq7 .paper .fig img{max-width:100%;max-height:220px}
.ef7{text-align:center;font-size:11px;color:#2E3A66;padding-top:8px}
.qa7h{font:700 20px var(--logo);color:#0A174E;margin:6px 0 16px}
.qa7{display:grid;grid-template-columns:repeat(5,1fr);border-top:1.5px solid #0A174E;border-left:1px solid #C9CDDB;align-content:start}
.qa7 div{display:flex;gap:10px;align-items:center;padding:9px 12px;border-right:1px solid #C9CDDB;border-bottom:1px solid #C9CDDB;font-size:13px;min-height:40px}
.qa7 b{color:#0A174E;min-width:18px}.qa7 span{overflow:hidden}
.cv7{justify-content:center;align-items:flex-start;gap:12px;padding:90px 80px;background:linear-gradient(#fff 70%,#F3F4F9)}
.cv7::before{content:"";position:absolute;left:0;top:0;bottom:0;width:18px;background:#0A174E}
.cv7 small{font-size:14px;color:#2E3A66}.cv7 b{font:700 36px/1.35 var(--logo);color:#0A174E}
.cv7 p{margin-top:40px;font-size:14px;line-height:1.8;color:#2E3A66;border-top:1px solid #C9CDDB;padding-top:20px}

/* 책처럼 넘겨 보기 (어두운 바탕 한 가지) */
.vw7{position:fixed;inset:0;z-index:48;background:#141A35;color:#fff;display:flex;flex-direction:column;animation:fIn .2s ease both}
.vw7.out{animation:fOut .18s ease both}
.vh7{display:flex;align-items:center;gap:14px;padding:10px max(16px,env(safe-area-inset-right,0px)) 10px max(12px,env(safe-area-inset-left,0px));padding-top:max(10px,env(safe-area-inset-top,0px));border-bottom:1px solid rgba(255,255,255,.1);flex-wrap:wrap}
.vx7{width:38px;height:38px;border:0;border-radius:10px;background:rgba(255,255,255,.08);display:grid;place-items:center;cursor:pointer}
.vx7 svg{width:16px;height:16px;stroke:#fff}
.vx7:hover{background:rgba(255,255,255,.16)}
.vt7{display:flex;flex-direction:column;min-width:0;flex:1}
.vt7 span{font-size:11px;font-weight:700;color:#A5CE3A;letter-spacing:.04em}
.vt7 b{font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vt7 small{font-size:12px;color:#C9CFE6}
.vz7{display:flex;background:rgba(255,255,255,.08);border-radius:10px;padding:3px}
.vz7 button{border:0;background:none;color:#fff;height:32px;min-width:34px;padding:0 10px;border-radius:7px;font:600 13px var(--ui);cursor:pointer}
.vz7 button:hover{background:rgba(255,255,255,.12)}
.va7{display:flex;gap:6px;flex-wrap:wrap}
.va7 button{height:38px;border-radius:10px;font:600 13px var(--ui);padding:0 14px;cursor:pointer;transition:background-color .15s,transform .1s}
.va7 button:active{transform:scale(.97)}
.va7 .vg{border:1px solid rgba(255,255,255,.22);background:none;color:#fff}.va7 .vg:hover{background:rgba(255,255,255,.1)}
.va7 .vp{border:0;background:#A5CE3A;color:#0A174E;padding:0 18px}.va7 .vp:hover{background:#B5DA52}
.vb7{flex:1;display:flex;min-height:0}
.vr7{width:150px;flex:none;overflow-y:auto;padding:16px 14px;display:flex;flex-direction:column;gap:14px;border-right:1px solid rgba(255,255,255,.08)}
.vr7 button{border:0;background:none;padding:0;display:flex;flex-direction:column;align-items:center;gap:6px;cursor:pointer;color:#C9CFE6;font:600 11.5px var(--ui)}
.vr7 .pgw{border-radius:3px;outline:2px solid transparent;outline-offset:3px;transition:outline-color .15s;box-shadow:0 4px 12px rgba(0,0,0,.3)}
.vr7 button.on{color:#fff}.vr7 button.on .pgw{outline-color:#A5CE3A}
.vs7{position:relative;flex:1;overflow:auto;padding:24px 32px 40px;display:flex;flex-direction:column;align-items:center;gap:24px;scroll-behavior:auto}
.vpg{position:relative;box-shadow:0 18px 50px -10px rgba(0,0,0,.55);border-radius:2px;flex:none}
.vpg .wm6{position:absolute;inset:0;pointer-events:none}
.vf7{display:flex;align-items:center;justify-content:center;gap:12px;padding:10px 16px;padding-bottom:max(10px,env(safe-area-inset-bottom,0px));border-top:1px solid rgba(255,255,255,.08);font-size:13px;font-weight:600}
.vf7 button{width:34px;height:34px;border:0;border-radius:50%;background:rgba(255,255,255,.1);color:#fff;font-size:20px;line-height:1;cursor:pointer}
.vf7 button:hover{background:rgba(255,255,255,.2)}
.vf7 small{font-size:11.5px;font-weight:500;color:#C9CFE6;margin-left:12px}
@media (max-width:760px){.vr7{display:none}.vs7{padding:16px}.vf7 small{display:none}.vt7{flex-basis:calc(100% - 60px)}}

/* 바로 인쇄 창 */
.pr7{max-width:480px}
.pr7d{display:flex;gap:14px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:12px;margin-bottom:6px}
.pr7t{flex:none;box-shadow:0 4px 12px -4px rgba(10,23,78,.3);border:1px solid var(--line)}
.pr7d b{display:block;font-size:15px;color:var(--text)}.pr7d small{font-size:12px;color:var(--text2)}
.pr7r{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px}
.stp7{display:flex;align-items:center;border:1px solid var(--line2);border-radius:9px;height:38px;overflow:hidden;width:max-content}
.stp7 button{width:38px;height:100%;border:0;background:var(--tint);color:var(--navy);font-size:17px;cursor:pointer}
.stp7 button:hover{background:var(--tint2)}
.stp7 input{width:52px;height:100%;border:0;text-align:center;font:700 14px var(--ui);color:var(--text);outline:0}
.btn-n .pi7{stroke:#fff}

/* 숏컷 카드·학원 자료 줄 */
.sc6a .b1{display:inline-flex;align-items:center}.sc6a .b1 .pi7{stroke:#fff}
.zm7{position:absolute;right:10px;bottom:10px;background:rgba(10,23,78,.85);color:#fff;font-size:11px;font-weight:600;border-radius:999px;padding:4px 10px;opacity:0;transform:translateY(4px);transition:opacity .15s,transform .15s}
.sc6i[data-scv]:hover .zm7{opacity:1;transform:none}
.sc6i img{image-rendering:auto}
.pth6[data-pv7],.pvt{cursor:pointer}.pvt:hover{text-decoration:underline;text-underline-offset:3px}
.ic7{width:34px;padding:0!important;display:inline-grid;place-items:center}.ic7 .pi7{margin:0}
.db6 .hd,.db6 .rw{grid-template-columns:minmax(180px,1.4fr) 76px 200px minmax(120px,1fr) auto}

/* 홈 선반 */
.h7 .h6h{align-items:baseline;justify-content:flex-start;gap:14px}
.h7n{font-size:12.5px;color:var(--text2)}
.h7t{display:flex;gap:4px;border-bottom:1px solid var(--line);margin-bottom:20px}
.h7t button{border:0;background:none;height:40px;padding:0 14px;font:600 14px var(--ui);color:var(--text2);border-bottom:2px solid transparent;margin-bottom:-1px;cursor:pointer;transition:color .15s,border-color .15s}
.h7t button span{font-size:12px;margin-left:6px;color:var(--navy2)}
.h7t button[aria-selected="true"]{color:var(--navy);border-bottom-color:var(--navy)}
.h7t button:hover{color:var(--navy)}
.h7s{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:22px 20px;animation:fIn .2s ease both}
.h7c{display:flex;flex-direction:column;gap:4px;min-width:0}
.h7p{position:relative;border:1px solid var(--line);border-radius:6px;padding:0;background:#fff;cursor:zoom-in;overflow:hidden;width:max-content;max-width:100%;box-shadow:0 10px 24px -16px rgba(10,23,78,.45);transition:transform .2s,box-shadow .2s;margin-bottom:8px}
.h7p:hover{transform:translateY(-3px);box-shadow:0 16px 30px -16px rgba(10,23,78,.5)}
.h7o{position:absolute;left:0;right:0;bottom:0;background:linear-gradient(transparent,rgba(10,23,78,.85));color:#fff;font-size:11.5px;font-weight:600;padding:22px 10px 8px;opacity:0;transition:opacity .15s;text-align:left}
.h7p:hover .h7o,.h7p:focus-visible .h7o{opacity:1}
.h7c>b{font-size:13.5px;font-weight:700;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.h7c>small{font-size:12px;color:var(--text2)}
.h7a{display:flex;gap:6px;margin-top:8px}
.h7a button{height:30px;border-radius:8px;font:600 12px var(--ui);padding:0 10px;cursor:pointer;display:inline-flex;align-items:center;white-space:nowrap}
.h7a .b1{border:0;background:var(--navy);color:#fff}.h7a .b1 .pi7{stroke:#fff;width:13px;height:13px}
.h7a .b2{border:1px solid var(--line2);background:#fff;color:var(--navy)}.h7a .b2:hover{border-color:var(--navy)}
.h7th{cursor:zoom-in;width:auto!important;height:auto!important}.h7th::before{display:none}
.h5bt .b2 .pi7{stroke:var(--navy)}
.rk7{font-size:11px;font-weight:700;border-radius:4px;padding:2px 6px;background:var(--tint2);color:var(--navy);flex:none}.rk7.p{background:#E2F0D6;color:#3F6B1E}
.h5g.two h3 [data-quota]{font-size:12px;font-weight:600;color:var(--navy2)}
@media (max-width:640px){.h7s{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 12px}.h7p .pgw{--z:.2!important}.pr7r{grid-template-columns:1fr}}
@media (max-width:760px){.vz7 #zw{display:none}}

/* PC 배치: 카드 칸으로(한 항목이 한 줄 전체를 차지하지 않게) */
.mg8{display:grid;grid-template-columns:repeat(auto-fill,minmax(196px,1fr));gap:26px 22px}
.pc8{display:flex;flex-direction:column;gap:4px;min-width:0}
.pc8m{font-size:12px;color:var(--text2)}
.pc8>b{font-size:14px;font-weight:700;color:var(--text);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.8em}
.pc8s{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-height:24px}.pc8s .lnk{font-size:12px}
.dg8{display:grid;grid-template-columns:repeat(auto-fill,minmax(430px,1fr));gap:20px}
.dc8{display:flex;gap:20px;border:1px solid var(--line);border-radius:14px;padding:18px;background:#fff;min-width:0;transition:border-color .15s,box-shadow .2s}
.dc8:hover{border-color:var(--line2);box-shadow:0 12px 28px -18px rgba(10,23,78,.35)}
.dc8 .h7p{margin:0;flex:none}
.dc8i{display:flex;flex-direction:column;gap:8px;min-width:0;flex:1}
.dc8i>b{font-size:17px;color:var(--text)}
.dc8n{display:flex;gap:22px;margin:4px 0 0}.dc8n div{display:flex;flex-direction:column}.dc8n dt{font-size:11.5px;color:var(--text2)}.dc8n dd{margin:0;font-size:20px;font-weight:700;color:var(--navy)}
.dc8 .lv6{flex-wrap:wrap}
.dc8u{font-size:12.5px;color:var(--text);line-height:1.5}
.dc8a{display:flex;gap:6px;align-items:center;margin-top:auto;flex-wrap:wrap}.dc8a .btn-g .pi7{stroke:var(--navy)}.dc8a .lnk{font-size:12px;margin-left:4px}
.bd8{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:start}
.bd8c{background:var(--side);border-radius:14px;padding:14px;display:flex;flex-direction:column;gap:10px;min-width:0}
.bd8c h4{margin:2px 4px 4px;font-size:14px;color:var(--text);display:flex;align-items:center;gap:8px}.bd8c h4 span{font-size:12px;color:#fff;background:var(--navy);border-radius:999px;padding:1px 8px}
.bd8i{background:#fff;border:1px solid var(--line);border-radius:10px;padding:12px 14px;display:flex;flex-direction:column;gap:4px;align-items:flex-start}
.bd8t{display:flex;align-items:center;gap:6px;width:100%}.bd8t small{margin-left:auto;font-size:11.5px;color:var(--text2)}
.bd8t i{font-size:10.5px;color:#8A6400;background:#FFF4D6;border-radius:3px;padding:0 4px}
.bd8i>b{font-size:13.5px;color:var(--text);line-height:1.45}.bd8i>small{font-size:12px;color:var(--text2)}
.bd8i .btn-g{margin-top:6px}
.bd8e{margin:4px;font-size:12.5px;color:var(--text2)}
.pipe{display:grid;grid-template-columns:repeat(auto-fill,minmax(420px,1fr));gap:12px;border:0;overflow:visible}
.pipe .prw{border:1px solid var(--line);border-radius:12px;flex-direction:column;align-items:flex-start;gap:12px}.pipe .prw+.prw{border-top:1px solid var(--line)}
@media (max-width:900px){.bd8{grid-template-columns:1fr}.dg8,.pipe{grid-template-columns:1fr}}
@media (max-width:640px){.dc8{flex-direction:column}.mg8{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 12px}.mg8 .pgw{--z:.2!important}}

/* 보조 글은 회색 대신 진한 남색(부원장 10/19) */
:root{--text2:#2E3A66;--hint:#3A4470}
