@charset "utf-8";
/* 초기화 */
html {overflow-y:scroll;font-size:0.75em;font-family:굴림, Gulim, Arial, dotum, Sans-serif}
body {margin:0;padding:0;background:#fff;color:#000;font-size:9pt;font-family:굴림, Gulim, Arial, dotum, Sans-serif}
html, h1, h2, h3, h4, h5, h6, form, fieldset, img { font-family:굴림, Gulim, Arial, dotum, Sans-serif}
h1, h2, h3, h4, h5, h6 {font-family:굴림, Gulim, Arial, dotum, Sans-serif}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {display:block}
header ul, nav ul, aside ul, footer ul, li, dd, dt {margin:0;padding:0;list-style:none;font-family:굴림, Gulim, Arial, dotum, Sans-serif;}
label, input, select, img {vertical-align:middle;font-family:굴림, Gulim, Arial, dotum, Sans-serif;}

textarea, select {font-family:굴림, Gulim, Arial, dotum, Sans-serif;font-size:1em}

input {margin:0;padding:0;border-radius:0;font-family:굴림, Gulim, Arial, dotum, Sans-serif}
input[type=text], input[type=password], input[type=submit], input[type=image] {-webkit-appearance:none}
button { font-family:굴림, Gulim, Arial, dotum, Sans-serif;-webkit-appearance:none;cursor:pointer}
p {margin:0;padding:0 0 10px;line-height:1.7em;word-break:break-all}
hr {display:none}
pre {overflow-x:scroll;font-size:1.1em}
a {color:#000;text-decoration:none;font-family:굴림, Gulim, Arial, dotum, Sans-serif;}
a:focus, a:hover, a:active {text-decoration:underline}

/* ================================================================
   레이아웃 - 관리자 헤더 (GNB / TNB / LNB)
   ※ 예전 header.php 인라인 <style> 에서 이곳으로 통합 (중복 제거)
   ================================================================ */
:root{
    --adm-navy:#12283d;
    --adm-navy2:#1e3d59;
    --adm-teal:#215a63;
    --adm-accent:#ffc107;
    --adm-font:'Pretendard',-apple-system,BlinkMacSystemFont,'Segoe UI','Malgun Gothic',sans-serif;
}

div, table { font-family:굴림, Gulim, Arial, dotum, Sans-serif; }

/* ===== 상단 헤더 ===== */
#hd{
    background:#1e3d59 linear-gradient(90deg,#12283d 0%,#1e3d59 55%,#215a63 100%) no-repeat;
    position:relative;
    z-index:1000;
    box-shadow:0 2px 14px rgba(3,15,28,.28);
    font-family:var(--adm-font);
}
#hd.hd_zindex{z-index:1000;}
#hd h1,#hd h2{position:absolute;border:0;font-size:0;line-height:0;overflow:hidden}
#hd_wrap{width:auto;max-width:none;margin:0;z-index:11;position:relative}

.adm-topbar{
    display:flex;
    align-items:center;
    gap:22px;
    height:62px;
    padding:0 22px;
}

/* 브랜드 */
#logo{position:static;height:auto}
.adm-brand{display:flex;align-items:center;gap:13px;flex:0 0 auto}
.adm-brand a{display:flex;align-items:center;text-decoration:none}
.adm-brand img{position:static;top:auto;left:auto;width:auto;height:48px;display:block}
.adm-brand-sub{
    color:rgba(255,255,255,.55);
    font-size:12px;font-weight:600;letter-spacing:-.02em;white-space:nowrap;
    padding-left:13px;border-left:1px solid rgba(255,255,255,.18);
}

/* ===== 주메뉴(GNB) ===== */
#gnb{
    position:static;left:auto;top:auto;right:auto;
    min-width:0;background:transparent;
    flex:1 1 auto;z-index:auto;
}
#gnb h2{margin:0;padding:0;font-size:0;line-height:0;overflow:hidden}
#gnb_1dul{margin:0;padding:0;display:flex;gap:2px}
#gnb_1dul:after{content:none}
.gnb_js .gnb_1dli{clear:none;position:relative;float:none;margin:0;border:0}
.gnb_js .gnb_1dli>a,
.gnb_1dli a.gnb_1da{
    display:flex;align-items:center;
    width:auto;height:44px;
    padding:0 15px;border-radius:10px;
    color:rgba(255,255,255,.82);
    font-family:var(--adm-font);
    font-size:14.5px;font-weight:600;
    line-height:normal;letter-spacing:-.02em;white-space:nowrap;
    text-decoration:none;
    transition:background .15s ease,color .15s ease;
}
.gnb_js .gnb_1dli>a:hover{background:rgba(255,255,255,.12);color:#fff}
.gnb_js .gnb_1dli_on>a,
.gnb_js .gnb_1dli_over>a{background:rgba(255,255,255,.16);color:#fff}
.gnb_js .gnb_1dli_air>a{
    background:rgba(255,255,255,.14);color:#fff;
    box-shadow:inset 0 -3px 0 var(--adm-accent);
}

/* 드롭다운 */
.gnb_js .gnb_2dul{
    display:none;position:absolute;top:44px;left:0;
    width:auto;min-width:212px;
    padding:6px;margin:0;
    /* 투명 상단 여백으로 시각적 간격을 두되 마우스 이동 시 hover가 끊기지 않도록 함 */
    border:0;border-top:8px solid transparent;
    border-radius:14px;
    background:#fff;background-clip:padding-box;
    box-shadow:0 20px 44px -14px rgba(3,15,28,.42),0 4px 14px rgba(3,15,28,.14);
}
/* 주메뉴와 드롭다운 사이 빈 공간을 덮는 hover 브리지 */
.gnb_js .gnb_1dli:after{
    content:"";position:absolute;left:0;right:0;top:38px;height:14px;
    background:transparent;display:none
}
.gnb_js .gnb_1dli_over:after,
.gnb_js .gnb_1dli_over2:after,
.gnb_js .gnb_1dli:hover:after{display:block}
.gnb_1dli_over .gnb_2dul,
.gnb_1dli_over2 .gnb_2dul,
.gnb_js .gnb_1dli:hover .gnb_2dul{display:block;animation:adm-drop .16s ease both}
.gnb_1dli_over2 .gnb_2dul{left:auto;right:0}
@keyframes adm-drop{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}

.gnb_js .gnb_2dli{float:none}
.gnb_js .gnb_2dli a,
.gnb_2dli a.gnb_2da{
    display:block;float:none;
    width:auto;height:auto;
    padding:10px 12px;border-radius:9px;
    background:#fff;color:#33475b;
    font-family:var(--adm-font);
    font-size:13.5px;font-weight:500;line-height:1.35;
    text-align:left;text-decoration:none;
    transition:background .12s ease,color .12s ease;
}
.gnb_js .gnb_2dli a:hover,
.gnb_js .gnb_2dli a:focus{background:var(--adm-navy2);color:#fff}
.gnb_js .gnb_grp_style{background:#f4f6f8}
.gnb_js .gnb_grp_style:hover{background:var(--adm-navy2)}
.gnb_js .gnb_grp_div{border-top:1px solid #eef1f4;margin-top:4px;padding-top:6px}

/* ===== 우측 사용자 영역 ===== */
.adm-user{display:flex;align-items:center;gap:12px;flex:0 0 auto;margin-left:auto}
.adm-user-chip{
    display:flex;align-items:center;gap:9px;
    padding:5px 13px 5px 5px;
    background:rgba(255,255,255,.1);
    border:1px solid rgba(255,255,255,.14);
    border-radius:999px;white-space:nowrap;
}
.adm-avatar{
    width:30px;height:30px;border-radius:50%;
    display:flex;align-items:center;justify-content:center;
    background:linear-gradient(140deg,var(--adm-accent),#ff9800);
    color:#3a2b00;font-weight:800;font-size:13px;
    font-family:var(--adm-font);
}
.adm-user-meta{display:flex;flex-direction:column;line-height:1.15}
.adm-user-meta b{color:#fff;font-size:13px;font-weight:700;letter-spacing:-.02em}
.adm-user-meta small{color:rgba(255,255,255,.55);font-size:11px;letter-spacing:-.01em}

#tnb{
    position:static;float:none;top:auto;right:auto;
    display:flex;gap:8px;margin:0;padding:0
}
#tnb:after{content:none}
#tnb li{float:none;margin:0;padding:0;border:0;list-style:none}
#tnb a{
    display:flex;align-items:center;gap:5px;
    height:34px;padding:0 13px;border-radius:9px;
    background:rgba(255,255,255,.08);
    color:rgba(255,255,255,.82);
    font-family:var(--adm-font);
    font-size:12.5px;font-weight:600;letter-spacing:-.02em;
    text-decoration:none;
    transition:background .15s ease,color .15s ease;
}
#tnb a:hover{background:rgba(255,255,255,.18);color:#fff}
#tnb #tnb_logout a{color:#ffd7dd;background:rgba(255,48,97,.22)}
#tnb #tnb_logout a:hover{background:rgba(255,48,97,.42);color:#fff}

/* ===== 서브메뉴(LNB) ===== */
#lnb{
    display:flex;flex-wrap:wrap;align-items:center;gap:4px;
    margin:0;padding:4px 22px;min-width:0;
    background:#f5f7f9;border-bottom:1px solid #e6eaee
}
#lnb:after{content:none}
#lnb li{float:none}
#lnb a{
    display:block;margin:0;padding:4px 12px;
    border:0;border-radius:7px;
    background:transparent;color:#5b6b7a;
    font-family:var(--adm-font);
    font-size:12.5px;font-weight:600;letter-spacing:-.02em;
    text-decoration:none;
    transition:background .15s ease,color .15s ease;
}
#lnb a:hover{background:#e4e9ee;color:var(--adm-navy2)}
#lnb a.bb{
    background:var(--adm-navy2);color:#fff;
    box-shadow:0 4px 10px -3px rgba(30,61,89,.5)
}

@media (prefers-reduced-motion:reduce){
    .gnb_js .gnb_2dul{animation:none}
}


/* 중간 레이아웃 */
#wrapper {margin:5px 0;min-width:1000px;zoom:1}
#wrapper:after {display:block;visibility:hidden;clear:both;content:""}


#container { position:relative; }

/* 화면낭독기 사용자용 */
#hd_login_msg {position:absolute;top:0;left:0;width:1px;height:1px;overflow:hidden}
.msg_sound_only, .sound_only {display:inline-block !important;position:absolute;top:0;left:0;margin:0 !important;padding:0 !important;width:1px !important;height:1px !important;font-size:0;line-height:0;border:0 !important;overflow:hidden !important}
/* 본문 바로가기 */
#to_content a {z-index:100000;position:absolute;top:0;left:0;font-size:0;line-height:0;overflow:hidden}
#to_content a:focus, #to_content a:active {width:100%;height:70px;background:#fff;font-size:2em;font-weight:bold;text-align:center;text-decoration:none;line-height:3.1em}