/* 먹튀 서치 DB — "수사 파일" 디자인: 검정 바탕 · 경고 노랑 · 증거에 찍는 판정 도장 */
:root{--bg:#f2f2ef;--bg2:#e8e8e3;--card:#fff;--tx:#0a0a0a;--mu:#5f5e58;--bd:#cfcec7;--ac:#ffc400;--ac-t:#8a5d00;--ac-s:#fff3c2;--vd:#d4281c;--ok:#0b61b3;--lab:#ecece7;--on:#0a0a0a;--sh:none;color-scheme:light}
:root[data-theme=dark]{--bg:#000;--bg2:#0d0d0b;--card:#121210;--tx:#f1eee4;--mu:#8f8c82;--bd:#2b2a25;--ac:#ffc400;--ac-t:#ffc400;--ac-s:#241f06;--vd:#ff4234;--ok:#7cc4ff;--lab:#181815;--on:#0a0a0a;color-scheme:dark}
*{box-sizing:border-box}
html{scroll-padding-top:90px}
body{margin:0;background:var(--bg);color:var(--tx);font:15px/1.65 "IBM Plex Sans KR","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,.rb,.bdg,.hero h1{font-family:"Black Han Sans","Noto Sans KR","Noto Sans CJK KR","Apple SD Gothic Neo","Malgun Gothic",sans-serif;font-weight:900;font-synthesis:none;letter-spacing:-.01em}
h3{font-size:17px;margin:26px 0 8px}
.in,.w{max-width:1040px;margin:0 auto;padding-left:16px;padding-right:16px}
.w{padding-top:26px;padding-bottom:64px;min-height:70vh}

/* 헤더: 맨 위 경고 띠 + 로고 + 현재 위치가 노랑으로 켜지는 서브메뉴 */
.hd{position:sticky;top:0;z-index:20;background:var(--bg);border-bottom:1px solid var(--bd)}
.hd:before{content:"";display:block;height:5px;background:repeating-linear-gradient(-45deg,var(--ac) 0 10px,#000 10px 20px)}
.nv{display:flex;align-items:center;gap:4px;min-height:56px;flex-wrap:wrap}
.nv .lg{font-size:20px;margin-right:auto;padding:0;color:var(--tx);display:flex;align-items:center;gap:9px}
.nv .lg i{font-style:normal;display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;background:var(--ac);color:var(--on);font-size:17px;line-height:1}
.nv a{padding:7px 12px;color:var(--mu);font-size:14px}.nv a:hover{color:var(--tx);background:var(--bg2)}
.nv a.lg:hover{background:none}
.nv .mu{font-size:14px;padding:0 8px;color:var(--mu)}.nv form{margin:0}.nv button{padding:7px 12px;font-size:14px}
.sp{display:none}.mu,.m{color:var(--mu)}

/* 버튼·입력 */
button,.btn{cursor:pointer;font:inherit;font-weight:700;background:var(--ac);color:var(--on);border:2px solid var(--ac);border-radius:0;padding:9px 18px;display:inline-block;line-height:1.5}
button:hover,.btn:hover{background:var(--tx);border-color:var(--tx);color:var(--bg)}
button.g,.btn.g{background:transparent;color:var(--tx);border:1px solid var(--bd);font-weight:500}
button.g:hover,.btn.g:hover{border-color:var(--tx);background:transparent;color:var(--tx)}
.tg{background:transparent!important;color:var(--mu)!important;border:1px solid var(--bd)!important;font-weight:500!important;margin-left:6px}
.tg:hover{color:var(--tx)!important;border-color:var(--tx)!important}
input,select,textarea{font:inherit;color:var(--tx);background:var(--card);border:1px solid var(--bd);border-radius:0;padding:10px 13px;width:100%;outline:none}
input:focus,select:focus,textarea:focus{border-color:var(--ac);box-shadow:0 0 0 2px var(--ac)}
label{display:block;margin:15px 0 5px;color:var(--mu);font-size:13px;font-weight:500}

/* 홈 */
.hero{text-align:left;padding:14px 0 6px;max-width:780px}
.hero h1{font-size:clamp(30px,6.4vw,54px);line-height:1.1;margin:0 0 10px}
.hero p{margin:0;max-width:46ch}
.sf{display:flex;max-width:760px;margin:22px 0 0}
.sf input{flex:1;height:56px;border:2px solid var(--tx);border-right:0;font-size:16px;padding:0 16px;background:var(--card)}
.sf input:focus{box-shadow:none;border-color:var(--ac)}
.sf button{height:56px;padding:0 28px;font-size:16px}
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:0 24px;margin:34px 0 4px;max-width:760px}
.st{background:none;border:0;border-top:2px solid var(--tx);padding:10px 0 0;text-align:left}
.st b{display:block;font-size:34px;line-height:1.15}.st span{color:var(--mu);font-size:13px}
.tabs{display:flex;gap:6px;margin:30px 0 8px;flex-wrap:wrap}
.tabs a{padding:6px 16px;border:1px solid var(--bd);color:var(--mu);font-weight:500}
.tabs a:hover{color:var(--tx);border-color:var(--tx)}
.tabs a.on{background:var(--tx);color:var(--bg);border-color:var(--tx)}

/* 목록: 증거 사진 + 도장이 찍힌 장부 */
.gal{display:grid;grid-template-columns:1fr;gap:0 44px}
@media(min-width:900px){.gal{grid-template-columns:1fr 1fr}}
.cd{display:grid;grid-template-columns:88px 1fr;gap:18px;align-items:center;padding:16px 4px 16px 10px;border-top:1px solid var(--bd);background:transparent;transition:background .12s}
.cd:hover{background:var(--bg2)}
.cd:hover .cb b{color:var(--ac-t);text-decoration:underline;text-underline-offset:3px}
.th{position:relative;width:88px;height:88px;aspect-ratio:auto;display:flex;align-items:center;justify-content:center;color:var(--mu);font-size:34px;background-size:cover;background-position:center;border:1px solid var(--bd)}
.th[style]{background:var(--bg2)!important}
.th img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.th.big{width:100%;height:auto;aspect-ratio:16/9;margin-bottom:16px}
.rb{position:absolute;left:-10px;bottom:-9px;transform:rotate(-7deg);background:var(--bg);color:var(--vd);border:2px solid var(--vd);font-size:13px;line-height:1.2;padding:1px 7px;white-space:nowrap}
.rb.nw{color:var(--tx);border:2px dashed var(--mu)}
.cb{padding:0;min-width:0;font-size:13px}
.cb b{display:block;font-size:16px;font-weight:700}
.cb div.m:first-of-type{font:500 13px/1.5 "IBM Plex Mono",ui-monospace,Menlo,Consolas,monospace}
.cb *{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* 박스·폼 */
.box{background:var(--card);border:1px solid var(--bd);border-top:3px solid var(--tx);padding:26px;max-width:440px;margin:28px auto;box-shadow:none}
.box.wide{max-width:none;margin:12px 0}.box h2{margin-top:0;font-size:21px}
.err{color:var(--vd);margin:10px 0;font-weight:700}
.bk{display:inline-block;color:var(--mu);margin-bottom:8px;font-size:14px}.bk:hover{color:var(--tx)}
.info{width:100%;border-collapse:collapse;margin:14px 0;font-size:14px}
.info th{width:150px;background:var(--lab);text-align:left;font-weight:700;padding:11px 14px;border:1px solid var(--bd);vertical-align:top}
.info td{padding:11px 14px;border:1px solid var(--bd);word-break:break-all}
.sb{display:inline-block;margin-left:8px;background:transparent;color:var(--ok);border:1px solid var(--ok);padding:0 9px;font-size:12.5px}
.sb:hover{background:var(--ok);color:var(--bg)}
.info ul{list-style:none;margin:0;padding:0}.info li{padding:3px 0}.info li a:hover{text-decoration:underline}
.cm{border-left:3px solid var(--bd);padding:6px 0 6px 14px;margin:12px 0}.cm small{color:var(--mu)}.cm form{display:inline}.cm button{background:none;border:0;color:var(--mu);padding:0 6px;font-size:12px;font-weight:400}.cm button:hover{background:none;color:var(--vd)}
.pg{display:flex;gap:12px;justify-content:center;align-items:center;margin-top:30px;color:var(--mu)}.pg a{padding:7px 16px;border:1px solid var(--bd);color:var(--tx)}.pg a:hover{border-color:var(--ac);background:var(--ac);color:var(--on)}
.ft{border-top:1px solid var(--bd);background:var(--bg);color:var(--mu);font-size:12.5px;padding:24px 0}

/* 게시판 */
.sn{position:relative;border-top:1px solid var(--bd);background:var(--bg)}.sn .in{display:flex;gap:2px;overflow-x:auto;scrollbar-width:none}
.sn a{padding:10px 14px;white-space:nowrap;color:var(--mu);font-size:14px}.sn a:hover{color:var(--tx)}
.sn a.on{background:var(--ac);color:var(--on);font-weight:700}
.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}
.bl{width:100%;border-collapse:collapse}.bl th,.bl td{padding:12px 8px;border-bottom:1px solid var(--bd);text-align:left}.bl th{color:var(--mu);font-weight:500;font-size:13px;border-bottom:2px solid var(--tx)}
.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:20px 0;margin:14px 0;border-top:1px solid var(--bd);border-bottom:1px solid var(--bd);line-height:1.9;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 6px;margin-left:4px}

/* 상세: 큰 도장 */
.vh{display:flex;gap:22px;align-items:center;margin-bottom:6px}.vt{flex:0 0 200px}.vt img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;border:1px solid var(--bd)}
.vh h1{margin:10px 0 0;font-size:30px;line-height:1.2;word-break:break-all}
.bdg{display:inline-block;transform:rotate(-3deg);transform-origin:left center;color:var(--vd);border:3px solid var(--vd);font-size:18px;line-height:1.2;padding:2px 12px;outline:1px solid var(--vd);outline-offset:2px}
.bdg.nw{color:var(--tx);border:3px dashed var(--mu);outline:0}
.fg{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}

/* 알림·관리자·기록 */
.nv a.cp{color:var(--tx);font-weight:600}.nv a.cp b{font-family:inherit;font-weight:700}
.flash{background:var(--ac);color:var(--on);padding:10px 16px;margin:0 0 16px;font-weight:700;animation:fl 6s forwards}
@keyframes fl{0%,85%{opacity:1}100%{opacity:0;height:0;padding:0;margin:0;border: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 8px;width:90px}.adm td button{padding:6px 12px}
.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:1px 8px;color:var(--bg);background:var(--mu)}.rb2.admin{background:var(--ac);color:var(--on)}.rb2.member{background:var(--ok)}.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 b{font-size:22px}
.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}
.ft .fl{margin-top:8px}.ft .fl a{color:inherit;text-decoration:underline}

/* 서브메뉴 스크롤 힌트 (모바일) */
.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}

@media(max-width:560px){
.hero h1{font-size:29px}.sf button{padding:0 18px}.sf input{height:52px}.sf button{height:52px}
.stats{gap:0 14px}.st b{font-size:25px}
.nv a{padding:7px 8px}
.cd{grid-template-columns:72px 1fr;gap:14px;padding:14px 2px 14px 6px}.th{width:72px;height:72px;font-size:28px}
.info th{width:112px;padding:9px 8px;font-size:13px}.info td{padding:9px 8px}
.vt{flex-basis:110px}.vh h1{font-size:21px}.vh{gap:14px}.bdg{font-size:15px}
.fg{grid-template-columns:1fr}
.hm{display:none}.bl th:nth-child(3),.bl td:nth-child(3){width:70px}
}
@media(prefers-reduced-motion:reduce){.flash{animation:none}*{transition:none!important}}
.pos{color:var(--ok)}.neg{color:var(--vd)}.nv a.mu:hover{color:var(--tx)}
