/* 먹튀 서치 DB — 디자인3 "먹튀 사전": 왼쪽 사이드바 · 명조 표제어 · 먹튀 확정은 취소선으로 그어지는 표제어 */
:root{--bg:#fbfaf7;--bg2:#efeee9;--card:#fff;--tx:#15151c;--mu:#6c6c78;--bd:#d9d8d2;--ac:#3b4bd8;--ac-t:#3b4bd8;--ac-s:#e6e9ff;--vd:#d92f2f;--ok:#0f7a63;--lab:#f2f1ec;--on:#fff;color-scheme:light}
:root[data-theme=dark]{--bg:#000;--bg2:#0f0f15;--card:#0f0f15;--tx:#ecebf4;--mu:#8b8b9a;--bd:#24242e;--ac:#93a4ff;--ac-t:#93a4ff;--ac-s:#171a36;--vd:#ff5d5d;--ok:#7fd6c2;--lab:#14141b;--on:#0a0a12;color-scheme:dark}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--tx);font:15.5px/1.7 "Noto Sans KR","Noto Sans CJK KR","Apple SD Gothic Neo","Malgun Gothic",sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
:focus-visible{outline:2px solid var(--ac);outline-offset:2px}
h1,h2,h3,.lg,.st b,.hw{font-family:"Hahmlet","Noto Serif KR","Noto Serif CJK KR","Batang",serif;font-weight:700;font-synthesis:none;letter-spacing:-.01em}
h3{font-size:18px;margin:30px 0 8px}
.in{padding-left:16px;padding-right:16px}
.mu,.m{color:var(--mu)}.sp{display:none}

/* 사이드바 */
.hd{background:var(--bg)}
.lg{display:flex;align-items:center;gap:10px;font-size:21px;font-weight:900}
.lg i{position:relative;display:inline-block;width:22px;height:22px;border:2px solid var(--vd);border-radius:50%;flex:none}
.lg i:after{content:"";position:absolute;left:50%;top:-4px;bottom:-4px;width:2px;margin-left:-1px;background:var(--vd);transform:rotate(45deg)}
.nv a:not(.lg){color:var(--mu);font-size:14px}.nv a:not(.lg):hover{color:var(--tx);background:var(--bg2)}
.nv .mu{font-size:13px}.nv form{margin:0}
.nv a.cp{color:var(--tx);font-weight:500}
.sn a{white-space:nowrap;color:var(--mu);font-size:14.5px}.sn a:hover{color:var(--tx);background:var(--bg2)}
.sn a.on{background:var(--ac);color:var(--on);font-weight:700}

@media(min-width:861px){
.hd{position:fixed;left:0;top:0;bottom:0;width:248px;display:flex;flex-direction:column;overflow-y:auto;border-right:1px solid var(--bd);padding:30px 14px 22px;z-index:20}
.hd>.in{display:contents}
.nv{display:contents}
.nv>*{order:3}
.nv .lg{order:0;margin:0 0 26px 10px}
.sn{order:1;margin-bottom:auto;border:0;background:none;position:static}
.sn .in{display:flex;flex-direction:column;gap:2px;padding:0;overflow:visible}
.sn a,.nv a:not(.lg){display:block;padding:7px 14px;border-radius:99px}
.nv .mu{padding:10px 14px 2px;display:block}
.nv button{margin:4px 0 0 14px;width:max-content}
.sn:before,.sn:after{display:none}
.w{margin:0 0 0 248px;max-width:1000px;padding:46px 48px 96px;min-height:70vh}
.ft{margin-left:248px}
}
@media(max-width:860px){
.hd{position:sticky;top:0;z-index:20;border-bottom:1px solid var(--bd)}
.nv{display:flex;align-items:center;gap:2px;min-height:52px}
.nv .lg{margin-right:auto;font-size:19px}
.nv a:not(.lg){padding:6px 9px}.nv .mu{display:none}
.sn{position:fixed;left:0;right:0;bottom:0;z-index:30;border-top:1px solid var(--bd);background:var(--bg)}
.sn .in{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;padding-top:7px;padding-bottom:max(7px,env(safe-area-inset-bottom))}
.sn a{padding:8px 15px;border-radius:99px}
.sn:before,.sn:after{content:"";position:absolute;top:0;bottom:0;width:26px;pointer-events:none;opacity:0;transition:opacity .15s;z-index:2}
.sn:before{left:0;background:linear-gradient(90deg,var(--bg),transparent)}.sn:after{right:0;background:linear-gradient(270deg,var(--bg),transparent)}
.sn.l:before,.sn.r:after{opacity:1}
body{padding-bottom:62px}
.w{max-width:none;padding:26px 16px 44px}
}

/* 버튼·입력: 알약형 */
button,.btn{cursor:pointer;font:inherit;font-weight:700;background:var(--ac);color:var(--on);border:0;border-radius:99px;padding:10px 22px;display:inline-block;line-height:1.5}
button:hover,.btn:hover{filter:brightness(1.12)}
button.g,.btn.g{background:transparent;color:var(--tx);border:1px solid var(--bd);font-weight:500;filter:none}
button.g:hover,.btn.g:hover{border-color:var(--tx)}
.tg{background:transparent!important;color:var(--mu)!important;border:1px solid var(--bd)!important;font-weight:500!important;padding:5px 14px!important;font-size:13px}
input,select,textarea{font:inherit;color:var(--tx);background:var(--bg2);border:1px solid transparent;border-radius:14px;padding:11px 15px;width:100%;outline:none}
input:focus,select:focus,textarea:focus{border-color:var(--ac);background:var(--card)}
label{display:block;margin:16px 0 6px;color:var(--mu);font-size:13px}

/* 홈 */
.hero{text-align:left;padding:0 0 4px;max-width:760px}
.hero h1{font-size:clamp(28px,4.6vw,44px);line-height:1.25;margin:0 0 12px}
.hero p{margin:0;max-width:44ch}
.sf{display:flex;gap:8px;max-width:680px;margin:24px 0 0}
.sf input{flex:1;height:56px;border-radius:99px;font-size:16px;padding:0 24px}
.sf button{height:56px;padding:0 30px;font-size:16px}
.stats{display:flex;flex-wrap:wrap;gap:6px 34px;margin:26px 0 0}
.st{display:flex;align-items:baseline;gap:8px;padding:0;background:none;border:0}
.st b{font-size:30px;line-height:1.2}.st span{color:var(--mu);font-size:14px}
.tabs{display:inline-flex;background:var(--bg2);border-radius:99px;padding:4px;margin:34px 0 10px;gap:2px}
.tabs a{padding:6px 20px;border-radius:99px;color:var(--mu);font-weight:500}
.tabs a:hover{color:var(--tx)}.tabs a.on{background:var(--ac);color:var(--on);font-weight:700}

/* 목록: 사전 표제어 */
.gal{display:grid;grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:0 52px}
.cd{display:flex;align-items:center;gap:18px;justify-content:space-between;padding:20px 2px;border-bottom:1px dotted var(--bd);transition:background .12s}
.cd:hover .hw{color:var(--ac-t)}
.cb{min-width:0;flex:1}
.hw{display:inline-block;max-width:100%;font-size:23px;line-height:1.35;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:bottom}
.hw.sc,.sc .hw{background:linear-gradient(var(--vd),var(--vd)) no-repeat 0 56%/100% 3px;animation:strike .8s .2s cubic-bezier(.6,0,.2,1) both}
.hw.nw,.nw .hw{text-decoration:underline wavy var(--mu);text-underline-offset:6px;text-decoration-thickness:1.5px}
@keyframes strike{from{background-size:0 3px}}
.cd:nth-child(2) .hw.sc,.sc:nth-child(2) .hw{animation-delay:.3s}.sc:nth-child(3) .hw{animation-delay:.4s}.sc:nth-child(4) .hw{animation-delay:.5s}.sc:nth-child(5) .hw{animation-delay:.6s}
.cb b{display:block;font-size:14.5px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cb .m{font-size:13px}
.th{position:relative;flex:none;width:60px;height:60px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--mu);font-family:"Hahmlet","Noto Serif KR",serif;font-size:24px;background:var(--bg2);aspect-ratio:auto}
.th[style]{background:var(--bg2)!important}
.th img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:50%}
.th.big{width:100%;height:auto;aspect-ratio:16/9;border-radius:18px;margin-bottom:16px}
.rb{position:absolute;left:50%;bottom:-9px;transform:translateX(-50%);background:var(--vd);color:#fff;font:700 11px/1.5 "Noto Sans KR",sans-serif;padding:0 10px;border-radius:99px;white-space:nowrap}
.rb.nw{background:var(--bg);color:var(--tx);border:1px solid var(--mu)}

/* 박스·폼 */
.box{background:var(--bg2);border-radius:26px;padding:30px;max-width:460px;margin:12px 0 28px;border:0}
.box.wide{max-width:none;margin:14px 0}.box h2{margin-top:0;font-size:22px}
.box input,.box select,.box textarea{background:var(--bg);}
.err{color:var(--vd);margin:10px 0;font-weight:500}
.bk{display:inline-block;color:var(--mu);margin-bottom:10px;font-size:14px}.bk:hover{color:var(--tx)}

/* 상세: 사전 항목 */
.vh{display:flex;gap:24px;align-items:center;margin-bottom:6px}.vt{flex:0 0 190px}.vt img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;border-radius:20px}
.vh h1{margin:10px 0 0;font-size:clamp(26px,4vw,38px);line-height:1.25;word-break:break-all}
.bdg{display:inline-block;background:var(--vd);color:#fff;font:700 12.5px/1.6 "Noto Sans KR",sans-serif;padding:0 13px;border-radius:99px}.bdg.nw{background:transparent;color:var(--tx);border:1px solid var(--mu)}
.info{width:100%;border-collapse:collapse;margin:16px 0;font-size:14.5px}
.info th{width:150px;background:none;text-align:left;font:500 14px/1.7 "Hahmlet","Noto Serif KR",serif;color:var(--mu);padding:12px 14px 12px 0;border:0;border-bottom:1px dotted var(--bd);vertical-align:top}
.info td{padding:12px 0;border:0;border-bottom:1px dotted var(--bd);word-break:break-all}
.info td,.cb .m{font-variant-numeric:tabular-nums}
.sb{display:inline-block;margin-left:8px;background:var(--ac-s);color:var(--ac-t);border-radius:99px;padding:0 11px;font-size:12.5px}
.sb:hover{background:var(--ac);color:var(--on)}
.info ul{list-style:none;margin:0;padding:0}.info li{padding:3px 0}.info li a:hover{text-decoration:underline}
.cm{background:var(--bg2);border-radius:18px;padding:12px 18px;margin:10px 0}.cm small{color:var(--mu)}.cm form{display:inline;float:right}.cm button{background:none;color:var(--mu);padding:0 6px;font-size:12px;font-weight:400;border-radius:0}.cm button:hover{color:var(--vd);filter:none}
.pg{display:flex;gap:12px;align-items:center;margin-top:30px;color:var(--mu)}.pg a{padding:7px 20px;border:1px solid var(--bd);border-radius:99px;color:var(--tx)}.pg a:hover{background:var(--ac);border-color:var(--ac);color:var(--on)}
.ft{border-top:1px solid var(--bd);color:var(--mu);font-size:12.5px;padding:26px 0}
.ft .in{max-width:900px;margin:0;padding-left:48px;padding-right:16px}
.ft .fl a{color:inherit;text-decoration:underline}.ft .fl{margin-top:8px}
@media(max-width:860px){.ft .in{padding-left:16px}}

/* 게시판 */
.bh{display:flex;justify-content:space-between;align-items:flex-end;gap:10px;flex-wrap:wrap}
.bs{display:flex;gap:8px;margin:16px 0 8px}.bs input{max-width:320px;border-radius:99px}
.bl{width:100%;border-collapse:collapse}.bl th,.bl td{padding:13px 8px;border-bottom:1px dotted var(--bd);text-align:left}.bl th{color:var(--mu);font-weight:500;font-size:13px}
.bl td.t{width:100%}.bl td.t a:hover{text-decoration:underline}.pin{color:var(--ac-t);font-weight:700;font-size:13px}
.pm{color:var(--mu);font-size:13px}.pbody{padding:22px 0;margin:14px 0;border-top:1px solid var(--bd);border-bottom:1px solid var(--bd);line-height:1.95;word-break:break-word}.pbody a{color:var(--ok);text-decoration:underline}
.tag{background:var(--ac);color:var(--on);font-size:11px;font-weight:700;padding:0 8px;border-radius:99px;margin-left:4px}
.fg{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}

/* 알림·관리자·기록 */
.flash{background:var(--ac);color:var(--on);border-radius:99px;padding:10px 22px;margin:0 0 18px;font-weight:700;display:inline-block;animation:fl 6s forwards}
@keyframes fl{0%,85%{opacity:1}100%{opacity:0;height:0;padding:0;margin:0;overflow:hidden}}
.adm h2{font-size:18px;margin:0 0 12px}.adm .fg label{margin-top:10px}.adm .row{display:flex;gap:8px;align-items:end;flex-wrap:wrap}.adm td form{display:flex;gap:6px;margin:0}.adm td input{padding:6px 10px;width:90px}.adm td button{padding:6px 14px}
.lgw{overflow-x:auto}.lgt td,.lgt th{font-size:12.5px;white-space:nowrap;padding:8px 8px}.lgt td.wrap{white-space:normal;min-width:180px;word-break:break-all}
.rb2{display:inline-block;font-size:11px;font-weight:700;padding:0 9px;border-radius:99px;color:var(--bg);background:var(--mu)}.rb2.admin{background:var(--vd);color:#fff}.rb2.member{background:var(--ac);color:var(--on)}.rb2.bot{background:var(--bd);color:var(--tx)}
.lgs{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;margin:14px 0}.lgs .st{display:block;background:var(--bg2);border-radius:18px;padding:12px 16px}.lgs .st b{font-size:22px;display:block}
.lgf{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;align-items:end}.lgf label{margin:0 0 3px}
.ev{color:var(--ac-t);font-weight:700}
.tl,.rel{margin:6px 0;padding-left:20px}.tl li,.rel li{margin:3px 0}

@media(max-width:560px){
.hero h1{font-size:27px}.sf input,.sf button{height:52px}.sf button{padding:0 20px}
.stats{gap:4px 22px}.st b{font-size:24px}
.gal{grid-template-columns:1fr}.hw{font-size:21px}
.info th{width:104px;font-size:13px}
.vt{flex-basis:108px}.vh{gap:14px}.fg{grid-template-columns:1fr}
.box{padding:22px;border-radius:22px}
.hm{display:none}.bl th:nth-child(3),.bl td:nth-child(3){width:70px}
}
@media(prefers-reduced-motion:reduce){.hw.sc,.sc .hw,.flash{animation:none}*{transition:none!important}}
h1 .hw{font-size:inherit;display:inline;max-width:none;white-space:normal;overflow:visible;line-height:inherit}
.nv button:not(.tg){padding:6px 16px;font-size:13px}
