/* NearD shell overrides only; imported PMS CSS remains unchanged. */
body.neard-admin { min-width: 0; min-height: 0; height: 100vh; overflow: hidden; color: var(--primary, #0a2f49); background: var(--bg, #f5f7fa); }
.neard-admin [hidden] { display: none !important; }
.neard-admin button { font: inherit; cursor: pointer; }
.neard-admin button:disabled { opacity: .55; cursor: default; }
.neard-admin button:focus-visible, .neard-admin a:focus-visible { outline: 2px solid #137bb7; outline-offset: 2px; }
.neard-shell { display: flex; flex-direction: column; }
.neard-shell .gnb-area { position: relative; inset: auto; display: flex; flex: 0 0 60px; align-items: center; justify-content: flex-start; gap: 28px; width: 100%; height: auto; min-height: 60px; padding: 0 20px; background: #fff; border-bottom: 1px solid #e4e6ea; z-index: 10; }
.neard-logo { font-size: 25px; font-weight: 800; color: #0a2f49; text-decoration: none; flex: 0 0 auto; }
.neard-shell .gnb-area nav { min-width: 0; }
.neard-shell .gnb { display: flex; gap: 6px; margin: 0; }
.neard-shell .gnb > li { position: relative; margin: 0; padding: 0; }
.neard-menu-toggle { height: 60px; padding: 0 13px; border: 0; border-bottom: 2px solid transparent; background: none; color: #566575; font-size: 12px !important; white-space: nowrap; }
.neard-shell .gnb > li.on > button, .neard-menu-toggle[aria-expanded="true"] { color: #0a2f49; border-bottom-color: #137bb7; font-weight: 700; }
.neard-shell .neard-submenu { position: absolute; top: 100%; left: 0; width: 195px; padding: 6px; background: #fff; border: 1px solid #e4e6ea; border-radius: 0 0 8px 8px; box-shadow: 0 8px 20px #0a2f4918; }
.neard-shell .neard-submenu li { display: block; margin: 0; padding: 0; }
.neard-submenu button { width: 100%; padding: 10px 12px; border: 0; border-radius: 4px; background: none; text-align: left; color: #34495b; font-size: 12px; }
.neard-submenu button:hover, .neard-submenu button:focus { background: #e8f3fb; }
.neard-account { display: flex; align-items: center; gap: 12px; margin-left: auto; font-size: 12px; white-space: nowrap; }
.neard-account form { margin: 0; }
.neard-account button, .neard-tab-actions button { border: 1px solid #d5dce4; border-radius: 5px; padding: 5px 9px; background: #fff; color: #566575; }
.neard-workspace { display: flex; flex-direction: column; flex: 1 1 0; min-height: 0; }
.neard-tabbar { display: flex; align-items: center; gap: 14px; padding: 6px 16px 0; flex: 0 0 44px; min-width: 0; border-bottom: 1px solid #dbe2ea; background: #edf1f6; }
#mdi-tabs { display: flex; align-self: stretch; flex: 1; overflow-x: auto; min-width: 0; scrollbar-width: thin; }
.neard-mdi-tab { display: flex; align-items: stretch; flex-shrink: 0; margin-right: 4px; border: 1px solid transparent; border-bottom: 0; border-radius: 7px 7px 0 0; }
.neard-mdi-tab > button { border: 0; background: none; color: #667585; }
.neard-mdi-tab > [role="tab"] { max-width: 190px; padding: 8px 6px 8px 12px; font-size: 12px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.neard-mdi-tab.active { background: #fff; border-color: #dbe2ea; }
.neard-mdi-tab.active > [role="tab"] { color: #0a2f49; font-weight: 700; }
.neard-tab-close { padding: 0 8px; font-size: 18px !important; }
.neard-tab-close:hover { color: #b12b2b; }
.neard-tab-actions { display: flex; align-items: center; gap: 12px; font-size: 11px; white-space: nowrap; padding-bottom: 5px; }
#main-mdi-content { position: relative; flex: 1 1 0; min-height: 0; }
.neard-mdi-frame { display: block; width: 100%; height: 100%; border: 0; }
.neard-mdi-message { margin: 0; padding: 10px 20px; background: #fff8e6; color: #79550c; font-size: 13px; }
.neard-welcome, .neard-pending { padding: 64px 24px; text-align: center; color: #657588; line-height: 2; }
.neard-welcome h1 { color: #0a2f49; font-size: 32px; font-weight: 800; margin-bottom: 12px; }
.neard-pending h2 { color: #0a2f49; font-size: 18px; margin-bottom: 8px; }
.neard-muted { color: #8795a5; font-size: 12px; }
.neard-screen-content { height: 100vh; padding: 14px 18px 18px; }
.neard-screen .data-area { height: 100%; min-height: 0; }
.neard-screen .data-area-head { display: flex; align-items: center; justify-content: space-between; }
.neard-readonly { color: #6f7e8d; background: #f1f4f8; padding: 4px 8px; border-radius: 4px; font-size: 11px; white-space: nowrap; }
.neard-screen .search-area { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 8px 10px; min-height: 45px; height: auto; }
.neard-screen .search-area .search-wrap { flex: 1; padding: 0; height: auto; }
.neard-screen .search-area .btn-wrap { position: static; display: flex; flex-shrink: 0; gap: 8px; }
.neard-screen .search-area .btn-wrap button { width: auto; min-width: 58px; height: 28px; padding: 0 12px; white-space: nowrap; }
.neard-screen .zform-horizontal { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; }
.neard-screen .top-btn-area { display: flex; justify-content: flex-end; align-items: center; height: 30px; min-height: 30px; padding: 0 3px; }
.neard-count { color: #566575; font-size: 12px; }
.neard-error-message { margin: 0 0 8px; padding: 10px 12px; border: 1px solid #e7b4b4; background: #fff7f7; color: #a12222; border-radius: 5px; font-size: 12px; }
@media (max-width: 1100px) {
  .neard-shell .gnb-area { gap: 14px; padding: 0 12px; }
  .neard-menu-toggle { padding: 0 8px; }
  .neard-account > span { max-width: 110px; overflow: hidden; text-overflow: ellipsis; }
}
@media (max-width: 800px) {
  .neard-shell .gnb-area { flex-wrap: wrap; gap: 0 16px; padding-top: 8px; }
  .neard-shell .gnb-area nav { order: 3; flex-basis: 100%; }
  .neard-menu-toggle { height: 40px; font-size: 11px !important; padding: 0 6px; }
  .neard-shell .gnb { gap: 0; }
  .neard-screen-content { padding: 10px; }
  .neard-tabbar { padding-left: 8px; padding-right: 8px; gap: 6px; }
}

/* Shell action icons: keep mobile touch targets without expanding desktop headers. */
.neard-shell .neard-icon-button { display:inline-flex; align-items:center; justify-content:center; flex:none; width:32px; height:32px; padding:0; border-radius:7px; }
.neard-icon-button svg { width:20px; height:20px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.neard-shell .neard-icon-button:hover:not(:disabled) { color:var(--ni-action, #137bb7); background:var(--ni-hover, #eaf2fa); }
@media (max-width:1000px) {
  .neard-shell .neard-icon-button { width:44px; height:44px; }
}

/* Shared PMS-style actions for screen headings and public Freeform submission. */
.neard-screen .data-area-head .btn-wrap button,.register-actions button{min-height:28px;padding:0 12px;border:1px solid #cfdbe5;border-radius:5px;background:#fff;color:#0a3550;white-space:nowrap}.neard-screen .data-area-head .btn-wrap button.primary,.register-actions button.primary{background:#0984bb;border-color:#0984bb;color:#fff}.neard-error-message.is-success{background:#eef8f3;border-color:#badfce;color:#24704f}
