/* One horizontal menu, with a compact dropdown for grouped modules. */
:root{--navy:#103a2b;--navy2:#174936;--gold:#37834b;--gold2:#91cb87}
.app{display:block}
.side{position:relative;inset:auto;z-index:10;width:100%;height:auto;min-height:0;overflow:visible;padding:12px 22px;display:flex;align-items:center;gap:16px;background:linear-gradient(110deg,#0b3025,#174937 68%,#1d553e);font-family:"Malgun Gothic","맑은 고딕","Apple SD Gothic Neo","Noto Sans KR",sans-serif}
.side .brand{border:0;padding:0;flex:none}
.side .side-logo-wrap{width:230px!important;height:54px}
.side nav{position:relative;flex:1;min-width:0;padding:0}
.side .side-foot{position:static;display:flex;align-items:center;gap:10px;border:0;margin:0;padding:0;flex:none}
.side .side-foot #logoutBtn{margin:0!important;width:auto!important;white-space:nowrap;padding:9px 11px!important}
.nav-group-tabs{display:flex;align-items:center;gap:1px;overflow-x:auto;scrollbar-width:thin}
.nav-group-tab{flex:none;border:0;border-bottom:3px solid transparent;background:transparent;color:#d4e7d8;font:700 16px/1.35 "Malgun Gothic","맑은 고딕",sans-serif;padding:15px 14px;white-space:nowrap;cursor:pointer}
.nav-group-tab:hover,.nav-group-tab.selected{color:#fff;border-bottom-color:var(--gold2);background:#ffffff13}
.nav-group-panels{position:absolute;top:100%;z-index:30;width:320px;max-width:calc(100vw - 30px);padding:9px;background:#123d2e;border:1px solid #ffffff35;border-radius:0 0 12px 12px;box-shadow:0 15px 30px #001b1240}
.nav-group-panels[hidden],.nav-group-panel[hidden]{display:none!important}
.nav-group-panel{display:grid;gap:2px}
.side .nav-item{width:100%;min-height:46px;margin:0;padding:10px 12px;white-space:normal;font-size:16px;font-weight:600;line-height:1.4;color:#e0eee2}
.side .nav-item span:first-child{width:24px;flex:none;text-align:center;font-size:18px}
.side .nav-item.active{box-shadow:inset 3px 0 0 var(--gold2)}
.master-console .role-banner{background:linear-gradient(135deg,#123e2d,#2b6948)!important}
.dashboard-notice-meta,.d-top{background:#123e2d!important}
main{grid-column:auto;min-width:0}
.top{position:relative}
.mobile-nav-toggle,.mobile-nav-close,.mobile-nav-backdrop{display:none!important}
@media(max-width:1050px){
  .app{display:block}
  .side{display:flex;position:relative;inset:auto;transform:none;width:100%;height:auto;min-height:0;padding:10px 14px;box-shadow:none;overflow:visible}
  .side .brand{padding:0}
  .side .side-logo-wrap{width:170px!important;height:51px}
  .side .side-foot{display:none}
  .side .nav-item{display:flex;justify-content:flex-start;min-height:46px;font-size:15px}
  .side .nav-item span:last-child{display:inline}
}
@media(max-width:760px){
  .side{display:block;padding:10px 12px}
  .side .brand{display:none}
  .nav-group-tab{font-size:15px;padding:12px 13px}
  .side .nav-item{font-size:15px}
  .top{position:relative}
}
