* {margin:0;padding:0;box-sizing:border-box;}
body {font-family:var(--font-sans);font-size:var(--fs-body);}
#HEADER {background:#fff;border-bottom:1px solid var(--c-border);box-shadow:0 1px 4px rgba(15,23,42,0.06);position:relative;z-index:600;}
#HEADER_LOGIN_AREA {display:flex;align-items:center;gap:6px;}
#ADMIN_HEADER_USER_AREA {display:flex;align-items:center;gap:6px;}
.header-inner {margin:0 auto;padding:0 24px;display:flex;justify-content:space-between;align-items:center;height:80px;gap:16px;}
.header-util {flex-shrink:0;display:flex;align-items:center;gap:8px;}
.header-user-id {font-size:13px;color:var(--c-text-base);font-weight:600;white-space:nowrap;word-break:keep-all;}
.logo-area {flex-shrink:0;}
.logo-area a {display:flex;align-items:center;gap:12px;text-decoration:none;}
.logo-img {height:40px;width:auto;display:block;}
.logo-text {display:flex;flex-direction:column;line-height:1.1;}
.logo-text .system-name {font-size:19px;font-weight:800;color:var(--c-text-strong);letter-spacing:-0.5px;white-space:nowrap;}
.logo-text small {font-size:10.5px;color:var(--c-text-muted);font-weight:600;margin-top:3px;letter-spacing:0.08em;text-transform:uppercase;white-space:nowrap;}
.gnb {flex:1;display:flex;justify-content:center;height:80px;}
.gnb > ul {display:flex;gap:0;height:100%;list-style:none;margin:0;padding:0;}
.gnb-item {position:relative;height:100%;}
.gnb-item > a {display:flex;align-items:center;height:100%;padding:0 20px;font-size:17px;font-weight:700;color:var(--c-text-strong);text-decoration:none;white-space:nowrap;transition:color .15s;border-bottom:3px solid transparent;letter-spacing:-0.2px;}
.gnb-item:hover > a {color:var(--c-primary);border-bottom-color:var(--c-primary);}
.gnb-item.active > a {color:var(--c-primary);border-bottom-color:var(--c-primary);}
.gnb-item .mega {display:none;position:absolute;top:80px;left:50%;transform:translateX(-50%);background:#fff;border:1px solid var(--c-border);border-top:2px solid var(--c-primary);box-shadow:0 12px 28px rgba(15,23,42,0.10);min-width:220px;z-index:50;}
.gnb-item:hover .mega,.gnb-item:focus-within .mega {display:block;}
.gnb-item .mega ul {list-style:none;margin:0;padding:0;}
.gnb-item .mega li {padding:0;}
.gnb-item .mega li a {display:block;padding:13px;font-size:15px;font-weight:500;color:var(--c-text-base);text-decoration:none;white-space:nowrap;transition:background .15s,color .15s;border-radius:4px;}
.gnb-item .mega li a:hover {background:var(--c-primary-soft);color:var(--c-primary);}
.util-btn {display:inline-flex;align-items:center;background:#fff;border:1px solid var(--c-border);border-radius:0;padding:8px 14px;font-size:13px;color:var(--c-text-base);font-weight:600;cursor:pointer;text-decoration:none;transition:all .15s;white-space:nowrap;line-height:1;}
.util-btn:hover {border-color:var(--c-primary);color:var(--c-primary);background:var(--c-primary-soft);}
.util-btn.primary {background:var(--c-primary);color:#fff;border-color:var(--c-primary);}
.util-btn.primary:hover {background:var(--c-primary-hover);border-color:var(--c-primary-hover);color:#fff;}
#MOBILE_NAV_DRAWER {display:none;position:fixed;top:56px;left:0;right:0;max-height:calc(100vh - 56px);overflow-y:auto;-webkit-overflow-scrolling:touch;background:#fff;border-bottom:2px solid var(--c-primary);box-shadow:0 4px 16px rgba(0,0,0,0.15);z-index:700;}
#MOBILE_NAV_DRAWER.open {display:block;}
#MOBILE_NAV_BACKDROP {display:none;position:fixed;top:56px;left:0;right:0;bottom:0;background:rgba(15,23,42,0.4);z-index:650;}
#MOBILE_NAV_BACKDROP.open {display:block;}
body.m-nav-open {overflow:hidden;}
.hamburger-btn {display:none;background:none;border:none;cursor:pointer;padding:4px 6px;color:var(--c-text-strong);font-size:26px;line-height:1;}
.m-acc {border-bottom:1px solid var(--c-border-soft);}
.m-acc-head {width:100%;display:flex;align-items:center;justify-content:space-between;background:none;border:none;padding:14px 20px;font-size:15px;font-weight:700;color:var(--c-text-strong);text-align:left;cursor:pointer;font-family:inherit;}
.m-acc-ar {font-size:11px;color:var(--c-text-muted);transition:transform .2s;}
.m-acc.open .m-acc-head {color:var(--c-primary);}
.m-acc.open .m-acc-ar {transform:rotate(180deg);color:var(--c-primary);}
.m-acc-body {display:none;background:var(--c-surface-2);}
.m-acc.open .m-acc-body {display:block;}
.m-acc-body a {display:block;padding:12px 20px 12px 34px;font-size:14px;font-weight:500;color:var(--c-text-base);text-decoration:none;border-top:1px solid var(--c-border-soft);}
.m-acc-body a:active {background:var(--c-primary-soft);color:var(--c-primary);}
.mobile-user-area {display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:12px 20px;border-top:2px solid var(--c-border-soft);background:var(--c-surface-2);}
@media (min-width:1025px) and (max-width:1280px) {
.header-inner {height:68px;padding:0 16px;gap:14px;}
.gnb,.gnb-item {height:68px;}
.gnb-item > a {padding:0 16px;font-size:14.5px;}
.gnb-item .mega {top:68px;}
.logo-img {height:34px;}
.logo-text .system-name {font-size:16px;}
.logo-text small {display:none;}
.util-btn {padding:6px 11px;font-size:12px;}}
@media (max-width:1024px) {
.header-inner {height:56px;padding:0 14px;gap:10px;}
.gnb {display:none;}
.header-util {display:none;}
.hamburger-btn {display:block;}
.logo-img {height:32px;}
.logo-text .system-name {font-size:15px;}
.logo-text small {display:none;}}