/* One service header across public, land and map. */
:root body.modu-webapp{--modu-control-bg:linear-gradient(180deg,#f7fbfa,#e7f0ee);--modu-control-border:#d0ddda;--modu-control-shadow:inset 0 1px 0 #fff,0 3px 8px rgba(18,68,61,.12);--modu-control-radius:14px;--modu-bottom-space:0px;--modu-bottom-height:0px;padding-bottom:0}
:root body.modu-webapp .modu-header-row{box-sizing:border-box;display:flex;align-items:center;gap:14px;width:100%;max-width:1160px;height:72px;margin:auto;padding:0 24px}
:root body.modu-webapp .modu-header-row .logo{display:inline-flex;align-items:center;gap:9px;flex:none;min-height:44px;font-size:21px;font-weight:800;line-height:1.2;letter-spacing:-.045em;color:#173943;text-decoration:none;white-space:nowrap}
:root body.modu-webapp .modu-header-row .mark{display:block;width:32px;height:32px;flex:none;background:none}
:root body.modu-webapp .modu-header-row .logo small{display:none}
:root body.modu-webapp .modu-service-tabs{min-width:0;flex:1;border:0;margin:0;padding:0;background:none}
:root body.modu-webapp .modu-service-tabs-inner{display:flex;align-items:center;gap:4px;min-width:0;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;padding:4px 2px}
:root body.modu-webapp .modu-service-tabs-inner::-webkit-scrollbar{display:none}
:root body.modu-webapp .modu-service-tab{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;gap:6px;flex:none;min-width:44px;min-height:44px;margin:0;padding:0 12px;border:1px solid var(--modu-control-border);border-radius:var(--modu-control-radius);background:var(--modu-control-bg);box-shadow:var(--modu-control-shadow);color:#46655e;font-size:12px;font-weight:650;line-height:1.4;white-space:nowrap;text-decoration:none;transition:background-color .15s,color .15s,box-shadow .15s,transform .15s}
:root body.modu-webapp .modu-service-tab svg{display:none}
:root body.modu-webapp .modu-service-tab-label{display:none}
:root body.modu-webapp .modu-service-tab-short{display:inline}
:root body.modu-webapp .modu-service-tab[aria-current=true]{background:#007c75;border-color:#007c75;color:#fff;box-shadow:inset 0 1px 0 #ffffff40,0 3px 8px rgba(0,108,101,.18);font-weight:750}
:root body.modu-webapp .modu-header-actions{display:flex;align-items:center;gap:6px;flex:none;margin-left:auto}
:root body.modu-webapp .modu-header-actions .loginlink,:root body.modu-webapp .modu-menu-toggle{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;flex:none;height:44px;min-height:44px;margin:0;padding:0 12px;border:1px solid var(--modu-control-border);border-radius:var(--modu-control-radius);background:var(--modu-control-bg);box-shadow:var(--modu-control-shadow);color:#244c44;font-size:12px;font-weight:650;line-height:1;white-space:nowrap;text-decoration:none;cursor:pointer;transition:background-color .15s,box-shadow .15s,transform .15s}
:root body.modu-webapp .modu-menu-toggle{display:none;width:44px;padding:0}
:root body.modu-webapp .modu-menu-toggle[aria-expanded=true]{background:#e4f3f0;border-color:#94c6be;color:#005c57}
:root body.modu-webapp .modu-header-actions .btn{min-height:44px}
:root body.modu-webapp .modu-header-row :is(a,button):focus-visible{outline:3px solid #007c75;outline-offset:2px}
@media(hover:hover){:root body.modu-webapp .modu-header-row :is(.modu-service-tab,.loginlink,.modu-menu-toggle):hover{filter:brightness(.98);transform:translateY(-1px)}}
:root body.modu-webapp .modu-header-row :is(.modu-service-tab,.loginlink,.modu-menu-toggle):active{transform:translateY(1px);box-shadow:inset 0 2px 3px rgba(18,68,61,.13),0 1px 2px rgba(18,68,61,.08)}
@media(max-width:900px){
 :root body.modu-webapp .modu-header-row{height:104px;padding:0 12px;gap:0 8px;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:56px 48px}
 :root body.modu-webapp .modu-header-row .logo{width:auto;height:44px;min-width:0;justify-content:flex-start;gap:8px;font-size:19px;grid-column:1;grid-row:1}
 :root body.modu-webapp .modu-brand-text{display:inline}
 :root body.modu-webapp .modu-header-row .mark{width:28px;height:28px}
 :root body.modu-webapp .modu-service-tabs{grid-column:1/-1;grid-row:2;width:100%;align-self:start}
 :root body.modu-webapp .modu-service-tabs-inner{display:grid;grid-template-columns:repeat(5,minmax(44px,1fr));gap:4px;padding:0;overflow:visible}
 :root body.modu-webapp .modu-service-tab,:root body.modu-webapp .modu-service-tab[data-site=public]{width:auto;min-width:44px;min-height:44px;padding:0 2px;font-size:12px;letter-spacing:-.025em;border-radius:12px}
 :root body.modu-webapp .modu-header-actions{grid-column:2;grid-row:1;gap:6px}
 :root body.modu-webapp .modu-header-actions>.btn{display:none}
 :root body.modu-webapp .modu-header-actions .loginlink{width:52px;padding:0;font-size:12px}
 :root body.modu-webapp .modu-menu-toggle{display:inline-flex}
}
@media(max-width:360px){
 :root body.modu-webapp .modu-header-row{padding-inline:8px;gap:0 4px}
 :root body.modu-webapp .modu-header-row .logo{gap:6px;font-size:17px}
 :root body.modu-webapp .modu-header-actions .loginlink{width:44px}
}
@media(prefers-reduced-motion:reduce){:root body.modu-webapp .modu-header-row :is(.modu-service-tab,.loginlink,.modu-menu-toggle),:root body.modu-webapp .modu-header-row :is(.modu-service-tab,.loginlink,.modu-menu-toggle):is(:hover,:active){transition:none;transform:none}}
@media(prefers-reduced-transparency:reduce){:root body.modu-webapp .modu-header-row :is(.modu-service-tab,.loginlink,.modu-menu-toggle){background:#eef5f2}:root body.modu-webapp .modu-service-tab[aria-current=true]{background:#007c75}}
@media(forced-colors:active){:root body.modu-webapp .modu-header-row :is(.modu-service-tab,.loginlink,.modu-menu-toggle){background:ButtonFace;color:ButtonText;border-color:ButtonText;box-shadow:none}:root body.modu-webapp .modu-service-tab[aria-current=true]{background:Highlight;color:HighlightText;border-color:Highlight;forced-color-adjust:none}}
@media print{.modu-service-tabs{display:none!important}}

/* Service-only shell around the unmodified public-development header controls.
   Sizes, tabs, logo and account buttons come from src/site/desktop-service-tabs.css. */
.modu-family-header{position:sticky;top:0;z-index:60;border-bottom:1px solid #dce5e3;background:#f9fcfb;color:#173943;font:13px/1.4 Pretendard,-apple-system,BlinkMacSystemFont,system-ui,sans-serif}
.modu-family-header [hidden]{display:none!important}
.modu-local-menu{box-sizing:border-box;display:flex;align-items:center;justify-content:center;gap:24px;min-height:48px;width:100%;max-width:1160px;margin:0 auto;padding:0 24px;border-top:1px solid #e4ebe9}
.modu-local-menu a{display:inline-flex;align-items:center;min-height:44px;padding:0 2px;color:#385b60;font-size:13px;font-weight:500;line-height:1.4;white-space:nowrap;text-decoration:none}
.modu-local-menu a:hover{color:#007c75}
.modu-local-menu a:focus-visible{outline:3px solid #007c75;outline-offset:2px}
@media(max-width:900px){
 .modu-local-menu{display:none;position:absolute;top:calc(100% + 8px);right:12px;grid-template-columns:1fr 1fr;gap:4px;width:min(360px,calc(100vw - 24px));min-height:0;margin:0;padding:12px;border:1px solid #dce5e3;border-radius:14px;background:#fff;box-shadow:0 16px 48px #142e4624}
 .modu-local-menu.is-open{display:grid}
 .modu-local-menu a{padding:8px 10px;border-radius:8px;background:#eef5f2;white-space:normal}
}
@media print{.modu-family-header{display:none!important}}
