.bsw-registry-search{margin:4px 0 16px;min-width:0;text-transform:none}
.bsw-registry-search label{display:block;font-size:14px;font-weight:700;margin-bottom:8px;color:var(--bsw-text,#223367)}
.bsw-registry-input{display:flex;gap:8px;align-items:stretch}
.bsw-registry-input input{min-width:0;flex:1;width:100%;height:46px;border:1px solid #c9d0e0;border-radius:12px;background:#f6f7fb;color:#223367;font-size:16px;padding:10px 12px}
.bsw-registry-input input::placeholder{color:#59647c;opacity:1;font-size:13px}
.bsw-registry-input button{background:#233366!important;color:#fff!important;border:1px solid #233366;border-radius:12px;min-height:46px;padding:8px 14px;font-size:14px;font-weight:700;white-space:normal}
.bsw-registry-results{display:grid;gap:6px;padding:8px 0 0;max-height:290px;overflow:auto}
.bsw-registry-results[hidden]{display:none}
.bsw-registry-results a{display:flex;gap:12px;align-items:center;padding:8px;border:1px solid #dce1eb;border-radius:12px;background:#fff;color:#233366!important;font-size:15px;line-height:1.3;font-weight:700;text-decoration:none}
.bsw-registry-results img{width:64px;height:64px;object-fit:cover;border-radius:9px;flex:none}
.bsw-registry-results p{font-size:14px;line-height:1.5;margin:4px}
.bsw-registry-search :focus-visible,.bsw-drawer-login:focus-visible{outline:3px solid #2f459d;outline-offset:3px}
.bsw-menu-scroll .bsw-drawer-login,.bsw-menu-scroll .bsw-drawer-apply{display:flex!important;align-items:center;justify-content:center;gap:10px;width:100%;box-sizing:border-box;min-height:48px;border-radius:14px!important;padding:12px 16px!important;font-size:14px!important;font-weight:750!important;line-height:1.35!important;text-align:center;text-decoration:none!important;margin:12px 0 0!important}
.bsw-menu-scroll .bsw-drawer-login{border:1px solid #aebbd5!important;background:#f5f7fc!important;color:#233366!important;box-shadow:0 3px 9px #182e5410}
.bsw-drawer-login::before{content:'';width:20px;height:20px;flex:none;background:currentColor;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='7' r='4' fill='none' stroke='black' stroke-width='1.8'/%3E%3Cpath d='M4 22v-3a8 8 0 0 1 16 0v3Z' fill='none' stroke='black' stroke-width='1.8'/%3E%3C/svg%3E") center/contain no-repeat}
.bsw-drawer-login::after{content:'→';margin-inline-start:auto;font-size:21px;transition:transform .15s}
.bsw-drawer-login:hover::after{transform:translateX(3px)}
html[data-bsw-mode="dark"] .bsw-registry-search label{color:#e7ecfa}
html[data-bsw-mode="dark"] .bsw-registry-input input,html[data-bsw-mode="dark"] .bsw-registry-results a,html[data-bsw-mode="dark"] .bsw-menu-scroll .bsw-drawer-login{background:#18243c!important;color:#fff!important;border-color:#566481!important}
html[data-bsw-mode="dark"] .bsw-registry-input input::placeholder{color:#c2cbdc}
@media(prefers-reduced-motion:reduce){.bsw-drawer-login::after{transition:none}}
@media(min-width:1024px){.bsw-menu-scroll .bsw-registry-search,.bsw-menu-scroll .bsw-drawer-login,.bsw-menu-scroll .bsw-drawer-apply{display:none!important}}
/* Native date popup remains readable in both appearance modes. */
html .bsw-application-language #nex-forms .bootstrap-datetimepicker-widget,
html .bsw-application-language #nex-forms .bootstrap-datetimepicker-widget table,
html .bsw-application-language #nex-forms .bootstrap-datetimepicker-widget th,
html .bsw-application-language #nex-forms .bootstrap-datetimepicker-widget td,
html .bsw-application-language #nex-forms .bootstrap-datetimepicker-widget .the-day{background-color:#fff!important;color:#233366!important}
html .bsw-application-language #nex-forms .bootstrap-datetimepicker-widget td.disabled .the-day,
html .bsw-application-language #nex-forms .bootstrap-datetimepicker-widget td.old .the-day,
html .bsw-application-language #nex-forms .bootstrap-datetimepicker-widget td.new .the-day{color:#65718a!important}
html .bsw-application-language #nex-forms .bootstrap-datetimepicker-widget td.active,
html .bsw-application-language #nex-forms .bootstrap-datetimepicker-widget td.active .the-day{background-color:#233366!important;color:#fff!important}
.bsw-application-language .bootstrap-datetimepicker-widget [data-action]::after{content:attr(aria-label)!important}

/* Combined public profile finder. Existing directory data and native links retained. */
.bsw-header-registry{display:none}
.bsw-registry-search{position:relative}
.bsw-registry-results{max-height:min(420px,55dvh);overscroll-behavior:contain;padding:8px 3px 3px}
.bsw-public .bsw-registry-results a.bsw-registry-card{align-items:center;gap:12px;padding:12px;text-transform:none;transition:border-color .16s,background-color .16s;animation:bsw-registry-reveal .16s ease-out}
.bsw-public .bsw-registry-results a.bsw-registry-card:hover{border-color:#23811a;background:#f5faf4}
.bsw-registry-copy{display:flex;flex-wrap:wrap;align-items:center;gap:7px 8px;min-width:0;flex:1}
.bsw-registry-copy strong{font-size:15px;line-height:1.4;overflow-wrap:anywhere;color:inherit}
.bsw-registry-badge{display:inline-flex;font-size:11px!important;line-height:1.4;font-weight:600;padding:4px 7px;border-radius:5px;white-space:normal}
.bsw-registry-certified{background:#e6f3e8;color:#206532!important}
.bsw-registry-graduate{background:#edf0fa;color:#334784!important}
.bsw-registry-view{flex-basis:100%;font-size:12px;font-weight:600;color:#213065;text-decoration:underline;text-underline-offset:3px}
html[data-bsw-mode=dark] .bsw-registry-certified{background:#203e2d;color:#b4efbd!important}
html[data-bsw-mode=dark] .bsw-registry-graduate{background:#293b60;color:#dbe6ff!important}
html[data-bsw-mode=dark] .bsw-registry-view{color:#dce7ff}
@keyframes bsw-registry-reveal{from{opacity:0;transform:translateY(3px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.bsw-public .bsw-registry-results a.bsw-registry-card{animation:none;transition:none}}
@media(min-width:1024px){
 body.bsw-public header.bsw-header .bsw-header-registry{display:block;background:var(--bsw-soft);border-top:1px solid var(--bsw-line);padding:10px 24px}
 .bsw-header-registry>.bsw-registry-search{display:grid;grid-template-columns:minmax(250px,1fr) minmax(380px,1fr);gap:20px;align-items:center;max-width:1000px;margin:0 auto}
 .bsw-header-registry .bsw-registry-search>label{margin:0;font-size:14px;line-height:1.5}
 .bsw-header-registry .bsw-registry-input input{background:var(--bsw-paper)}
 .bsw-header-registry .bsw-registry-results:not([hidden]){position:absolute;top:calc(100% + 8px);inset-inline-end:0;width:min(540px,100%);max-height:min(480px,60dvh);background:var(--bsw-paper);border:1px solid var(--bsw-line);border-radius:14px;padding:8px;box-shadow:0 16px 32px #15264b24;z-index:90}
}
@media(max-width:1023px){
 .bsw-menu-scroll .bsw-registry-search>label{font-size:14px;line-height:1.5}
 .bsw-registry-results img{width:64px;height:64px}
}

.bsw-registry-actions{display:flex;align-items:center;flex-wrap:wrap;gap:6px 12px;flex-basis:100%;min-width:0}
.bsw-registry-actions .bsw-registry-view{flex-basis:auto}
.bsw-registry-valid{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:650;line-height:1.5;color:#206532!important}
.bsw-registry-valid::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;flex:none}
html[data-bsw-mode=dark] .bsw-registry-valid{color:#b4efbd!important}

/* BSW Stringer Login, 2026-11-10: original implementation inspired by the
   icon and edge treatment of reglobby's MIT Log In component:
   https://uiverse.io/reglobby/slimy-parrot-21 (via jjtsc.cn).
   Scoped to the existing drawer; native translated link and destination retained. */
@media(max-width:1023px){
 body.bsw-public header.bsw-header .bsw-navigation a.bsw-drawer-login{
  display:flex!important;align-items:center;justify-content:center;gap:10px!important;
  width:100%!important;min-width:0;max-width:100%;min-height:48px;height:auto;
  box-sizing:border-box!important;margin:10px 0 0!important;padding:11px 16px!important;
  border:1px solid transparent!important;border-radius:12px!important;
  background:linear-gradient(110deg,#27396f,#1c2a57) padding-box,linear-gradient(115deg,#70c96a,#5873a4 55%,#344575) border-box!important;
  background-size:100% 100%!important;background-position:0 0!important;
  color:#fff!important;-webkit-text-fill-color:#fff!important;
  font-size:14px!important;font-weight:700!important;line-height:1.45!important;letter-spacing:.025em;
  text-align:center;text-decoration:none!important;white-space:normal;overflow-wrap:anywhere;
  box-shadow:0 3px 8px #17264718;transform:none;transition:box-shadow .18s ease,border-color .18s ease;
 }
 body.bsw-public header.bsw-header .bsw-navigation a.bsw-drawer-login::before,body.bsw-public header.bsw-header .bsw-navigation a.bsw-drawer-login::after{content:none!important;display:none!important}
 body.bsw-public header.bsw-header .bsw-navigation a.bsw-drawer-login .bsw-login-icon{display:block;width:20px;height:20px;flex:0 0 20px;fill:none;stroke:#b6e9a9;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
 body.bsw-public header.bsw-header .bsw-navigation a.bsw-drawer-login .bsw-login-label{color:inherit!important;-webkit-text-fill-color:inherit!important;min-width:0}
 body.bsw-public header.bsw-header .bsw-navigation a.bsw-drawer-login:is(:hover,:focus-visible){color:#fff!important;background-position:0 0!important;border-color:#89d878!important;box-shadow:0 0 0 3px #5bb74b26,0 4px 12px #17264720}
 body.bsw-public header.bsw-header .bsw-navigation a.bsw-drawer-login:focus-visible{outline:3px solid var(--bsw-focus,#327927);outline-offset:3px}
 body.bsw-public header.bsw-header .bsw-navigation a.bsw-drawer-login:active{transform:none;background:linear-gradient(#172346,#172346) padding-box,linear-gradient(115deg,#89d878,#5873a4) border-box!important}
 html[data-bsw-mode="dark"] body.bsw-public header.bsw-header .bsw-navigation a.bsw-drawer-login{
  background:linear-gradient(110deg,#223257,#17243f) padding-box,linear-gradient(115deg,#8fd181,#526d9a 60%,#41567d) border-box!important;
  color:#fff!important;-webkit-text-fill-color:#fff!important;box-shadow:0 3px 10px #0002
 }
}
@media(prefers-reduced-motion:reduce){body.bsw-public header.bsw-header .bsw-navigation a.bsw-drawer-login{transition:none!important}}

/* Compact country identity in both header and drawer search; no new network library. */
.bsw-public .bsw-registry-results .bsw-registry-country{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;flex:0 0 54px;min-width:0;text-align:center;color:#495775;font-size:11px;line-height:1.35;font-weight:500;overflow-wrap:anywhere}
.bsw-public .bsw-registry-results .bsw-registry-country .bsw-registry-flag{display:block;width:30px;height:30px;min-width:30px;object-fit:contain;border-radius:50%;background:#fff;box-shadow:0 0 0 1px #dce2eb}
html[data-bsw-mode="dark"] .bsw-public .bsw-registry-results .bsw-registry-country{color:#d6deee}
html[data-bsw-mode="dark"] .bsw-public .bsw-registry-results .bsw-registry-flag{box-shadow:0 0 0 1px #526079}
@media(max-width:600px){
 .bsw-public .bsw-registry-results a.bsw-registry-card{gap:8px;padding:10px}
 .bsw-public .bsw-registry-results a.bsw-registry-card>img{width:48px;height:56px}
 .bsw-public .bsw-registry-results .bsw-registry-country{flex-basis:42px;font-size:10px}
 .bsw-public .bsw-registry-results .bsw-registry-country .bsw-registry-flag{width:28px;height:28px;min-width:28px}
}
