.bapmu-global-footer {
  --footer-primary: #7a5af8;
  --footer-primary-dark: #5237c9;
  --footer-pink: #f279a7;
  --footer-mint: #62c7a5;
  position: relative;
  z-index: 9;
  width: 100%;
  box-sizing: border-box;
  margin-top: 0;
  padding: 42px max(24px, calc((100% - 1180px) / 2)) 22px;
  overflow: hidden;
  border-top: 1px solid rgba(51, 76, 124, .14);
  background: linear-gradient(145deg, #fff, #f0ecff 58%, #f9edf3);
  color: #272333;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
.bapmu-public-header { position: relative; z-index: 9; width: 100%; border-bottom: 1px solid #e5e0ee; background: rgba(255,255,255,.92); box-shadow: 0 3px 16px rgba(61,45,105,.05); backdrop-filter: blur(18px); }
.bapmu-public-header-inner { display: flex; align-items: center; justify-content: space-between; width: min(1180px, calc(100% - 48px)); min-height: 76px; margin: 0 auto; }
.bapmu-public-brand { display: inline-flex; align-items: center; gap: 10px; color: #5237c9; text-decoration: none; }
.bapmu-public-brand span { display: grid; place-items: center; width: 44px; height: 44px; border-radius: 13px; background: linear-gradient(145deg, #9b7bfa, #7a5af8, #5237c9); color: #fff; font: 33px/1 Georgia, serif; box-shadow: 0 7px 20px rgba(18, 8, 55, .3); }
.bapmu-public-brand strong { font-size: 1.35rem; letter-spacing: .02em; }
.bapmu-public-header nav { display: flex; align-items: center; gap: 8px; }
.bapmu-public-header nav a { display: inline-flex; align-items: center; justify-content: center; min-height: 40px; padding: 0 14px; border-radius: 10px; color: #5f596b; font-size: .88rem; font-weight: 750; text-decoration: none; }
.bapmu-public-header nav a:hover { background: #f0ecff; color: #5237c9; }
.login-public-page { background: radial-gradient(circle at 12% 8%, #eee8ff 0, transparent 32rem), linear-gradient(180deg,#faf9fd,#f3effa) !important; color: #272333 !important; }
.login-public-page .living-sky { display: none !important; }
.login-public-page .balanced-story h1 { color: #272333 !important; text-shadow: none !important; animation: none !important; }
.login-public-page .balanced-story p { color: #736e80 !important; animation: none !important; }
.login-public-page .balanced-story .brand-overline { color: #6847ee !important; animation: none !important; }
.login-public-page .balanced-login-card { border: 1px solid #e5e0ee !important; background: #fff !important; color: #272333 !important; box-shadow: 0 18px 54px rgba(61,45,105,.12) !important; transform: none !important; }
.login-public-page .balanced-login-card :is(h2,label) { color: #272333 !important; }
.login-public-page .balanced-login-card .mockup-subtitle,.login-public-page .balanced-login-card .mockup-security { color: #736e80 !important; }
.login-public-page .balanced-login-card input { border-color: #dcd5e7 !important; background: #fff !important; color: #272333 !important; }
.login-public-page .balanced-login-card input:focus { border-color: #7a5af8 !important; outline: 3px solid rgba(122,90,248,.16) !important; }
.login-public-page .mockup-logo,.login-public-page .mockup-link { color: #6847ee !important; }
.login-public-page .mockup-primary { background: #7a5af8 !important; color: #fff !important; }
.login-public-page .mockup-primary:hover { background: #6847ee !important; }
.login-public-page .mockup-secondary { border-color: #d9d0f1 !important; background: #f0ecff !important; color: #5237c9 !important; }
.recovery-public-page { background: radial-gradient(circle at 12% 8%,#eee8ff 0,transparent 32rem),linear-gradient(180deg,#faf9fd,#f3effa) !important; color: #272333 !important; }
.recovery-public-page .living-sky { display: none !important; }
.recovery-public-page .recovery-card { border: 1px solid #e5e0ee !important; background: #fff !important; color: #272333 !important; box-shadow: 0 18px 54px rgba(61,45,105,.12) !important; }
.recovery-public-page .recovery-card :is(h1,label) { color: #272333 !important; }
.recovery-public-page :is(.recovery-subtitle,.recovery-back) { color: #736e80 !important; }
.recovery-public-page .mockup-logo,.recovery-public-page .recovery-back { color: #6847ee !important; }
.recovery-public-page .mockup-primary { background: #7a5af8 !important; color: #fff !important; }
.recovery-public-page input { border-color: #dcd5e7 !important; background: #fff !important; color: #272333 !important; }
.bapmu-public-info { min-height: 100vh; margin: 0; background: radial-gradient(circle at 12% 8%,#eee8ff 0,transparent 32rem),linear-gradient(180deg,#faf9fd,#f3effa); color: #272333; font-family: Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
.bapmu-public-content { width: min(980px,calc(100% - 48px)); min-height: 560px; margin: 0 auto; padding: 84px 0 100px; }
.bapmu-public-content > span { color: #6847ee; font-size: .76rem; font-weight: 850; letter-spacing: .14em; }
.bapmu-public-content h1 { max-width: 760px; margin: 12px 0 18px; font-size: clamp(2.7rem,7vw,5rem); line-height: .98; letter-spacing: -.055em; }
.bapmu-public-content .lead { max-width: 760px; margin: 0; color: #736e80; font-size: 1.15rem; line-height: 1.65; }
.bapmu-info-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 18px; margin-top: 48px; }
.bapmu-info-grid section { padding: 24px; border: 1px solid #e5e0ee; border-radius: 18px; background: #fff; box-shadow: 0 8px 28px rgba(61,45,105,.07); }
.bapmu-info-grid h2 { margin: 0 0 10px; font-size: 1.12rem; }
.bapmu-info-grid p { margin: 0; color: #736e80; line-height: 1.55; }
.bapmu-info-grid a { display: inline-block; margin-top: 16px; color: #6847ee; font-weight: 750; text-decoration: none; }
.bapmu-global-footer::before { content: ""; position: absolute; inset: 0 0 auto; height: 3px; background: linear-gradient(90deg, var(--footer-primary), var(--footer-pink), var(--footer-mint)); }
.bapmu-footer-brand > a { display: inline-flex; align-items: center; gap: 9px; color: var(--footer-primary-dark); text-decoration: none; }
.bapmu-footer-brand > a span { display: grid; place-items: center; width: 38px; height: 38px; border-radius: 11px; background: linear-gradient(145deg, #9b7bfa, var(--footer-primary), var(--footer-primary-dark)); color: #fff; font: 29px/1 Georgia, serif; box-shadow: 0 5px 13px rgba(82, 55, 201, .22); }
.bapmu-footer-brand > a strong { font-size: 1.25rem; letter-spacing: .02em; }
.bapmu-footer-brand p { max-width: 370px; margin: 12px 0 0; color: #736e80; }
.bapmu-global-footer > nav { display: grid; grid-template-columns: repeat(4, minmax(120px, 1fr)); gap: 28px; margin: 30px 0; }
.bapmu-global-footer > nav section { display: flex; flex-direction: column; gap: 9px; }
.bapmu-global-footer > nav strong { margin-bottom: 3px; color: #272333; }
.bapmu-global-footer > nav a { width: max-content; color: #736e80; font-size: .88rem; text-decoration: none; }
.bapmu-global-footer > nav a:hover { color: var(--footer-primary); text-decoration: underline; }
.bapmu-footer-bottom { display: flex; justify-content: space-between; gap: 18px; padding-top: 18px; border-top: 1px solid #e5e0ee; color: #827c8e; font-size: .78rem; }
@media (max-width: 760px) {
  .bapmu-public-header-inner { width: calc(100% - 32px); min-height: 68px; }
  .bapmu-public-brand span { width: 38px; height: 38px; border-radius: 11px; font-size: 29px; }
  .bapmu-public-brand strong { font-size: 1.1rem; }
  .bapmu-public-back { min-height: 38px; padding: 0 12px; font-size: .78rem; }
  .bapmu-global-footer { padding: 32px 20px 20px; }
  .bapmu-global-footer > nav { grid-template-columns: repeat(2, 1fr); gap: 24px; }
  .bapmu-footer-bottom { flex-direction: column; }
  .bapmu-public-content { width: calc(100% - 32px); min-height: 0; padding: 54px 0 70px; }
  .bapmu-info-grid { grid-template-columns: 1fr; margin-top: 32px; }
}
