/* 딥찐 — 리서치 도구: 딥네이비 + 민트 */
:root{
  --ink:#14181f; --sub:#4e5968; --faint:#8b95a1; --line:#e5e8eb;
  --deep:#1a2c4e; --mint:#00c471; --mint-d:#00a05c; --red:#f04452; --bg:#fff; --panel:#f7f9fb;
}
*{box-sizing:border-box}
html,body{margin:0}
body{font-family:"Noto Sans KR",-apple-system,sans-serif; color:var(--ink); background:var(--bg); padding-bottom:80px;}
.wrap{max-width:720px; margin:0 auto; padding:0 18px;}

.top{text-align:center; padding:50px 0 6px;}
.top h1{font-size:44px; font-weight:900; margin:0; letter-spacing:-1.5px; color:var(--deep);}
.top h1 .g{color:var(--mint)}
.top .tag{color:var(--sub); font-size:15px; margin:8px 0 0; line-height:1.7;}
.top .tag b{color:var(--ink)}

.searchbox{margin-top:20px;}
#f{display:flex; gap:10px;}
#q{flex:1; font:inherit; font-size:16.5px; padding:15px 18px; border:2px solid var(--line); border-radius:14px; outline:none;}
#q:focus{border-color:var(--mint);}
#go{font:inherit; font-size:15.5px; font-weight:700; color:#fff; background:var(--deep); border:0; border-radius:14px; padding:0 20px; cursor:pointer; white-space:nowrap;}
#go:disabled{opacity:.5}
.chips{display:flex; flex-wrap:wrap; gap:8px; margin-top:12px; justify-content:center;}
.chip{font-size:12.5px; color:var(--sub); background:var(--panel); border:1px solid var(--line); border-radius:999px; padding:7px 12px; cursor:pointer;}
.chip:hover{border-color:var(--mint); color:var(--mint-d);}
.note{text-align:center; color:var(--faint); font-size:12px; margin-top:12px;}

/* 진행 타임라인 */
#timeline{margin-top:26px;}
.step{display:flex; gap:12px; padding:9px 0; font-size:14.5px; color:var(--sub); align-items:baseline;}
.step .ic{flex:0 0 22px; text-align:center;}
.step.done .ic{color:var(--mint-d); font-weight:900;}
.step .tx b{color:var(--ink)}
.step .detail{display:block; color:var(--faint); font-size:12.5px; margin-top:2px; line-height:1.7;}
.spinner{display:inline-block; animation:rot 1s steps(10) infinite;}
@keyframes rot{to{transform:rotate(360deg)}}

/* 리포트 */
#report, .reportpage{margin-top:26px;}
.rcard{border:1.5px solid var(--line); border-radius:18px; padding:26px 26px 20px; background:#fff; box-shadow:0 3px 20px rgba(20,24,31,.06);}
.rmeta{color:var(--faint); font-size:12.5px; margin-bottom:14px;}
.rmeta b{color:var(--mint-d)}
#md h1{font-size:24px; line-height:1.4; margin:0 0 14px; letter-spacing:-.5px;}
#md h2{font-size:17.5px; margin:22px 0 8px; color:var(--deep);}
#md p, #md li{font-size:15px; line-height:1.95; color:var(--ink); word-break:keep-all;}
#md ul{padding-left:20px; margin:8px 0;}
#md .cite{color:var(--mint-d); font-size:11.5px; font-weight:700; vertical-align:super; margin:0 1px;}
#md b{font-weight:700}

.shead{font-weight:900; font-size:15px; margin:24px 0 8px;}
.src{display:block; text-decoration:none; color:inherit; border:1px solid var(--line); border-radius:12px; padding:11px 14px; margin:7px 0;}
.src:hover{border-color:var(--mint)}
.src .st{font-size:14px; font-weight:700; line-height:1.5;}
.src .sk{font-size:11px; color:var(--faint); margin-top:4px;}
.src .no{display:inline-block; background:var(--deep); color:#fff; font-size:11px; font-weight:800; border-radius:6px; padding:1px 7px; margin-right:7px;}

.actions{display:flex; gap:10px; margin-top:18px;}
.actions a, .actions button{flex:1; text-align:center; text-decoration:none; font:inherit; font-size:14.5px; font-weight:700; padding:13px; border-radius:12px; border:1.5px solid var(--line); color:var(--ink); background:#fff; cursor:pointer;}
.actions .prime{background:var(--mint); border-color:var(--mint); color:#fff;}

/* 최근 리포트 */
.recent{margin-top:40px;}
.recent .rh{font-weight:900; font-size:15px; margin-bottom:8px; color:var(--deep);}
.ritem{display:block; text-decoration:none; color:inherit; padding:11px 4px; border-bottom:1px solid var(--line); font-size:14.5px;}
.ritem:hover .rt{color:var(--mint-d)}
.ritem .rt{font-weight:600;}
.ritem .rd{color:var(--faint); font-size:12px; margin-top:2px;}

.foot{margin-top:46px; text-align:center; color:var(--faint); font-size:12px; line-height:1.9;}
.hidden{display:none}
a{color:inherit}
