/* Public sign-in presentation only. Keep the shared dashboard and kits intact.
   This first-declared important layer gives the local layout precedence over
   the portfolio adapter without adding artificial ID specificity. */
@layer bula-signin {
  #root .auth-utilities{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;margin:20px 0 28px!important;min-height:44px!important;position:relative;z-index:3}
  #root #bula-auth-welcome{display:none}
  #root .auth-utilities .bw-own-line{position:static!important;display:flex!important;flex:0 1 auto!important;flex-basis:auto!important;width:auto!important;max-width:100%!important;margin:0!important;padding:0!important;gap:0!important}
  #root .auth-utilities .bw-pill{min-height:44px!important;margin:0!important;padding:10px 14px!important;white-space:nowrap!important}
  #root .auth-header-share{margin:0 0 0 auto!important;width:auto!important;flex:0 0 auto!important}
  #root .auth-header-share .share-btn{min-height:44px!important;min-width:44px!important;padding:10px 14px!important;background:rgba(240,248,255,.92)!important;color:#123d60!important;border:1px solid #9dc9e0!important;border-radius:8px!important;box-shadow:0 2px 8px #04293a18!important;font-size:13px!important;font-weight:700!important}
  #root .auth-switch button{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:44px!important;padding:6px 3px!important;border:0!important;background:transparent!important;color:var(--green)!important;font:700 14px/1.5 var(--body)!important;text-decoration:underline!important;text-underline-offset:3px;cursor:pointer;box-shadow:none!important;border-radius:4px!important}
  #root .auth-switch button:focus-visible{outline:3px solid #1e90ff!important;outline-offset:2px!important}
  #root .auth-top .brand{max-width:calc(100% - 96px)!important}
  @media(max-width:899px){
    #root:has(.auth-wrap){position:relative!important}
    /* The shared kit can attach beside #root during an auth transition.
       Reserve the same utility slot whether it mounts inside or outside it. */
    #root:has(.auth-wrap)>.bw-own-line{position:absolute!important;top:84px!important;left:24px!important;right:auto!important;margin:0!important;padding:0!important;width:auto!important;max-width:calc(100% - 48px)!important;z-index:5!important}
    #root .auth-wrap{padding:0!important;display:block!important;min-height:100svh!important;background:#faf8f2!important}
    #root .auth-card{display:block!important;max-width:none!important;width:100%!important;min-height:100svh!important;background:#faf8f2!important;border:0!important;border-radius:0!important;box-shadow:none!important;animation:none!important;backdrop-filter:none!important}
    #root .auth-top{display:block!important;padding:20px 24px 28px!important;min-width:0!important}
    #root .auth-top .brand{min-height:44px!important;gap:12px!important;padding:0!important;font-size:18px!important;line-height:1.3!important;position:relative!important;inset:auto!important}
    #root .auth-top h1{margin:0!important;font-size:32px!important;line-height:1.18!important;max-width:16ch!important;letter-spacing:-.035em!important;color:#fff!important}
    #root .auth-top>p{margin:14px 0 0!important;max-width:46ch!important;font-size:14px!important;line-height:1.65!important;color:#e3f0f5!important;opacity:1!important}
    #root .auth-body{display:block!important;max-width:520px!important;margin:0 auto!important;padding:28px 24px 96px!important;position:relative!important;z-index:3}
    #root .auth-body .field{margin:0 0 20px!important}
    #root .auth-body .field label{font-size:12px!important;line-height:1.4!important;letter-spacing:.06em!important;margin-bottom:8px!important;color:#385364!important}
    #root .auth-body .field input{min-height:52px!important;border:1px solid #c9d6dd!important;border-radius:10px!important;padding:14px!important;background:#fff!important;font-size:16px!important;line-height:1.4!important;color:#132f40!important;box-shadow:none!important}
    #root .auth-body .field input:focus{outline:3px solid #91c9ea!important;outline-offset:2px!important;border-color:#075b94!important}
    #root .auth-body>.btn{min-height:52px!important;border:1px solid #075b94!important;border-radius:10px!important;background:#075b94!important;color:#fff!important;box-shadow:0 4px 12px #075b941c!important;font-size:16px!important;line-height:1.4!important;padding:14px!important;font-weight:700!important;width:100%!important}
    #root .auth-body>.btn:hover{background:#064e80!important}
    #root .auth-body>.btn:focus-visible{outline:3px solid #91c9ea!important;outline-offset:3px!important}
    #root .auth-body>.btn:disabled{opacity:.65!important}
    #root .auth-switch{display:flex!important;align-items:center!important;justify-content:center!important;flex-wrap:wrap!important;gap:0 5px!important;margin-top:12px!important;font-size:13px!important;line-height:1.6!important;color:#526876!important}
    #root .demo-hint{margin:16px 0 0!important;padding:13px 16px!important;border:1px solid #d6e5ed!important;border-radius:10px!important;background:#eef5f8!important;color:#3c5c6f!important;font-size:12px!important;line-height:1.6!important;text-align:center!important}
    body:has(#root .auth-wrap)>.dm-acct{position:absolute!important;top:20px!important;right:24px!important;z-index:5!important}
    body:has(#root .auth-wrap)>.dm-acct .dm-acct-btn{min-height:44px!important;max-width:92px!important;padding:10px 12px!important;font-size:12px!important;border-radius:8px!important;box-shadow:none!important}
    /* Keep the owner's animated butterfly in the header gap on sign-in only.
       Dashboard flight paths and country artwork remain unchanged. */
    body:has(#root .auth-wrap) .page-bf{position:absolute!important;inset:24px 104px auto auto!important;width:52px!important;height:42px!important;overflow:visible!important;z-index:2!important}
    body:has(#root .auth-wrap) .page-bf .vbf{left:0!important;top:6px!important;animation:bula-auth-float 6s ease-in-out infinite!important}
    body:has(#root .auth-wrap) .page-bf .bfly{--bf-w:42px!important;filter:drop-shadow(0 2px 3px #04293a33)!important}
    @keyframes bula-auth-float{0%,100%{transform:translate(0,0) rotate(-4deg)}50%{transform:translate(3px,-3px) rotate(4deg)}}
    @media(prefers-reduced-motion:reduce){body:has(#root .auth-wrap) .page-bf .vbf{animation:none!important}}
    @media(max-width:359px){
      #root .auth-top{padding:16px 20px 24px!important}
      #root .auth-top .brand{font-size:16px!important;gap:8px!important}
      #root .auth-top h1{font-size:29px!important}
      #root .auth-body{padding:24px 20px 96px!important}
      #root .auth-utilities{gap:10px!important;margin-top:16px!important;margin-bottom:24px!important}
      #root:has(.auth-wrap)>.bw-own-line{top:76px!important;left:20px!important;max-width:calc(100% - 40px)!important}
      body:has(#root .auth-wrap)>.dm-acct{top:16px!important;right:20px!important}
    }
  }
}
