
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:#f4f5f7;color:#1a1a1a;
 font-family:'Nanum Gothic','NanumGothic','나눔고딕','Malgun Gothic',sans-serif;
 font-size:17px;line-height:1.85;word-break:keep-all;overflow-wrap:anywhere}
.wrap{max-width:900px;margin:0 auto;padding:0 20px 120px}
header.top{background:#12213c;color:#fff;padding:14px 0;margin-bottom:26px;
 position:sticky;top:0;z-index:40;box-shadow:0 2px 10px rgba(0,0,0,.18)}
header.top .wrap{padding-bottom:0;display:flex;gap:6px;align-items:center;flex-wrap:wrap}
header.top a{color:#c9d8f2;text-decoration:none;font-size:14px;padding:5px 11px;
 border-radius:6px;font-weight:700;white-space:nowrap}
header.top a:hover{background:#24365a;color:#fff}
header.top a.on{background:#3d68b8;color:#fff}
header.top .brand{color:#fff;font-weight:700;font-size:15px;margin-right:10px}
h1{font-size:31px;line-height:1.38;font-weight:700;margin:26px 0 10px;letter-spacing:-.4px}
h2{font-size:23px;font-weight:700;margin:52px 0 12px;padding-bottom:9px;
 border-bottom:3px solid #12213c;letter-spacing:-.3px}
h3{font-size:19px;font-weight:700;margin:30px 0 8px;color:#12213c}
h4{font-size:17px;font-weight:700;margin:22px 0 6px}
p{margin:11px 0}
.card{background:#fff;border-radius:12px;padding:22px 26px;margin:18px 0;
 box-shadow:0 1px 3px rgba(0,0,0,.09)}
.fig{display:block;margin:14px auto;max-width:100%}
.figbox{background:#fff;border:1px solid #e3e6ea;border-radius:10px;padding:14px;margin:16px 0}
.cap{font-size:14px;color:#5a5a5a;margin:8px 2px 0;line-height:1.7}
.cap b{color:#1a1a1a}
.lede{font-size:20px;line-height:1.75;font-weight:700}
.big{font-size:34px;font-weight:700;letter-spacing:-1px;display:inline-block}
.tw{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:14px 0}
table{border-collapse:collapse;width:100%;font-size:15px;background:#fff;min-width:440px}
th,td{border:1px solid #e0e3e8;padding:9px 11px;text-align:left;vertical-align:top;line-height:1.65}
th{background:#eef1f6;font-weight:700;white-space:nowrap}
tbody tr:nth-child(even){background:#fafbfc}
code{background:#eef1f6;padding:2px 6px;border-radius:4px;font-size:.88em;
 font-family:ui-monospace,Menlo,Consolas,monospace}
pre{background:#12213c;color:#e8eefb;padding:15px 17px;border-radius:9px;overflow-x:auto;
 font-size:14px;line-height:1.62}
pre code{background:none;color:inherit;padding:0}
blockquote{border-left:5px solid #3d68b8;background:#f0f4fb;margin:16px 0;
 padding:12px 18px;border-radius:0 8px 8px 0}
blockquote p{margin:6px 0}
hr{border:0;border-top:1px solid #dfe3e8;margin:30px 0}
ul,ol{padding-left:26px;margin:11px 0}
li{margin:5px 0}
a{color:#1f5fd0}
del{color:#8a8a8a}
.mdlink{color:#1f5fd0;font-weight:700}
mark{background:#fff3bf;padding:1px 3px;border-radius:3px}
.hl{background:#fff3bf;border-bottom:2px solid #c07a00;padding:1px 0}
.pill{display:inline-block;font-size:13px;font-weight:700;padding:3px 12px;
 border-radius:99px;vertical-align:middle}
.p-red{background:#fdecec;color:#b02020;border:1px solid #f3c4c4}
.p-green{background:#e8f6ee;color:#0f6b37;border:1px solid #b9e2cb}
.p-amber{background:#fff5e0;color:#94600a;border:1px solid #f2dca8}
.p-gray{background:#eef0f3;color:#54606f;border:1px solid #dbdfe5}
.p-blue{background:#e9f0fc;color:#1a4fac;border:1px solid #c3d6f5}
.banner{border-radius:11px;padding:17px 21px;margin:18px 0;border-left:8px solid}
.b-red{background:#fdf0f0;border-color:#d02a2a}
.b-amber{background:#fff8e8;border-color:#c07a00}
.b-blue{background:#eef3fc;border-color:#1f5fd0}
.b-green{background:#eefaf2;border-color:#137a3f}
.banner h3{margin-top:0}
.kpi{display:flex;gap:12px;flex-wrap:wrap;margin:16px 0}
.kpi>div{flex:1 1 150px;background:#fff;border:1px solid #e3e6ea;border-radius:10px;
 padding:13px 15px}
.kpi .n{font-size:27px;font-weight:700;line-height:1.25;letter-spacing:-.6px}
.kpi .l{font-size:13px;color:#5a5a5a;font-weight:700}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(285px,1fr));gap:14px;margin:16px 0}
.tabs{display:flex;gap:7px;margin:26px 0 0;flex-wrap:wrap;border-bottom:2px solid #dfe3e8}
.tabs button{font-family:inherit;font-size:15px;font-weight:700;border:0;cursor:pointer;
 background:none;color:#5a5a5a;padding:10px 16px;border-bottom:3px solid transparent;
 margin-bottom:-2px}
.tabs button.on{color:#12213c;border-bottom-color:#12213c}
.tabpane{display:none}
.tabpane.on{display:block}
.tt{border-bottom:1px dotted #9aa4b2}
.fnref{font-size:.68em;vertical-align:super;font-weight:700;color:#d02a2a;
 text-decoration:none;padding:0 1px 0 2px}
.fnback{font-size:13px;color:#5a5a5a;text-decoration:none;margin-left:5px}
.foot{margin-top:52px;border-top:3px solid #12213c;padding-top:6px}
.fns li{margin:9px 0;font-size:15px;line-height:1.75}
.fns b{color:#12213c}
/* 판정 바 */
.verdict{background:#12213c;color:#fff;border-radius:12px;padding:16px 20px;margin:22px 0}
.verdict .q{font-size:16px;font-weight:700;margin-bottom:11px}
.vbtns{display:flex;gap:9px;flex-wrap:wrap}
.vbtn{font-family:inherit;font-size:15px;font-weight:700;border:2px solid transparent;
 border-radius:9px;padding:10px 17px;cursor:pointer;color:#fff}
.v-keep{background:#137a3f}.v-dev{background:#c07a00}.v-kill{background:#d02a2a}
.vbtn.sel{outline:3px solid #fff;outline-offset:1px}
/* 밑줄 툴팁 */
#selbtn{position:absolute;z-index:90;display:none;background:#12213c;color:#fff;
 border:0;border-radius:8px;padding:9px 14px;font-family:inherit;font-size:14px;
 font-weight:700;cursor:pointer;box-shadow:0 4px 14px rgba(0,0,0,.3)}
/* 하단 시트 */
#sheet{position:fixed;left:0;right:0;bottom:0;z-index:100;background:#fff;
 border-top:3px solid #12213c;box-shadow:0 -6px 26px rgba(0,0,0,.22);
 transform:translateY(102%);transition:transform .2s;max-height:88vh;overflow-y:auto}
#sheet.on{transform:translateY(0)}
#sheet .in{max-width:900px;margin:0 auto;padding:16px 20px 22px}
#sheet .meta{font-size:13px;font-weight:700;color:#5a5a5a}
#sheet blockquote{margin:9px 0;font-size:15px}
#sheet textarea{width:100%;min-height:112px;font-family:inherit;font-size:16px;
 padding:11px;border:2px solid #cfd6e0;border-radius:8px;line-height:1.7;resize:vertical}
.quick{display:flex;gap:7px;flex-wrap:wrap;margin:9px 0}
.quick button{font-family:inherit;font-size:13px;font-weight:700;background:#eef1f6;
 border:1px solid #d5dbe4;border-radius:99px;padding:6px 13px;cursor:pointer;color:#33415c}
.quick button:hover{background:#dfe6f2}
.act{display:flex;gap:9px;flex-wrap:wrap;margin-top:11px;align-items:center}
.btn{font-family:inherit;font-size:15px;font-weight:700;border:0;border-radius:9px;
 padding:11px 18px;cursor:pointer;background:#12213c;color:#fff;text-decoration:none;
 display:inline-block}
.btn.sec{background:#eef1f6;color:#33415c;border:1px solid #d5dbe4}
.btn:disabled{opacity:.45;cursor:default}
/* 떠 있는 보내기 버튼 */
#fabwrap{position:fixed;right:16px;bottom:16px;z-index:80}
#fab{background:#d02a2a;color:#fff;border:0;border-radius:99px;padding:13px 19px;
 font-family:inherit;font-size:15px;font-weight:700;cursor:pointer;
 box-shadow:0 5px 18px rgba(0,0,0,.3);display:none}
.secmark{font-size:13px;font-weight:700;color:#8894a6;cursor:pointer;
 background:none;border:0;font-family:inherit;padding:2px 6px;vertical-align:middle}
.secmark:hover{color:#d02a2a}
.small{font-size:14px;color:#5a5a5a}
.mono{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:14px}
footer.ft{margin-top:56px;padding-top:18px;border-top:1px solid #dfe3e8;
 font-size:13.5px;color:#5a5a5a;line-height:1.8}
@media(max-width:640px){
 body{font-size:16px}h1{font-size:25px}h2{font-size:20px}.big{font-size:28px}
 .card{padding:17px 16px}.wrap{padding:0 14px 130px}
 .kpi>div{flex:1 1 132px}
}
