
body.app { background: #fff; }
.app-header { border-bottom: 1px solid #e3e7e2; }
.app-bar { max-width: 1116px; margin: 0 auto; min-height: 72px; gap: 12px; }
.app-bar .brand { min-height: 44px; justify-content: flex-start; text-decoration: none; }
.app-bar .brand-word { font-family: var(--lr-font-round, 'LR Round'), var(--lr-font-sans, 'LR Sans'), sans-serif; font-weight: 800; font-size: 25px; letter-spacing: -.03em; color: #2f6b52; line-height: 1; }
.app-gnb { display: none; align-self: stretch; margin-left: 18px; gap: 4px; }
.app-gnb a { display: inline-flex; align-items: center; padding: 0 9px; font-weight: 700; font-size: 16px; color: #1f2723; text-decoration: none; white-space: nowrap; }
.app-gnb a:hover { color: #2f6b52; text-decoration: underline; text-underline-offset: .35em; }
@media (min-width: 1024px) { .app-gnb { display: flex; } }
.app-links a.ic { color: #1f2723; }
.app-links a.ic .ico { width: 22px; height: 22px; }
body.app:has(#role-switch a[data-role="expert"][aria-current="true"]) .app-links a.cust { display: none; }
@media (max-width: 1023px) { .app-links a.home .lbl, .app-links a.kakao .lbl { display: none; } }
@media (max-width: 479px) { .app-links a.cust.msg { display: none; } .app-bar .brand-word { font-size: 21px; } .app-bar { gap: 6px; padding: 0 8px; } }
@media (min-width: 1024px) {
  .app-body { max-width: 1116px; margin: 0 auto; grid-template-columns: 220px minmax(0, 1fr); gap: 8px; }
  .app-side { border-right: 0; background: transparent; padding: 28px 12px 16px 16px; }
  .app-main { padding-top: 36px; }
}
.app-tabbar { box-shadow: 0 -2px 10px rgba(20, 30, 25, .06); }
.app-tabbar a[aria-current="page"] { background: transparent; color: #2f6b52; }
.app-tabbar a[aria-current="page"] .ico { stroke-width: 2.2; }
.role-card { align-items: center; }
