/* This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this
 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */

:root[inDOMFullscreen] #navigator-toolbox,
:root[inDOMFullscreen] #fullscr-toggler,
:root[inDOMFullscreen] #sidebar-box,
:root[inDOMFullscreen] #sidebar-splitter,
:root[inFullscreen]:not([macOSNativeFullscreen]) toolbar:not([fullscreentoolbar=true]),
:root[inFullscreen] .global-notificationbox {
  visibility: collapse;
}

#fullscr-toggler {
  top: 0;
  left: 0;
  right: 0;
  height: 1px;
  position: fixed;
  z-index: 2147483647;
}

#fullscreen-and-pointerlock-wrapper {
  position: fixed;
  z-index: 2147483647 !important;
  width: 100%;
  height: 100%;
  top: 0;
  pointer-events: none;
}

.pointerlockfswarning {
  position: fixed;
  visibility: visible;
  transition: transform 300ms ease-in;
  /* To center the warning box horizontally,
     we use left: 50% with translateX(-50%). */
  top: 0;
  left: 50%;
  transform: translate(-50%, -100%);
  box-sizing: border-box;
  width: max-content;
  max-width: 95%;
  pointer-events: none;
  align-items: center;
  background: rgba(45, 62, 72, 0.9);
  border: 2px solid currentColor;
  box-shadow: 0px 0px 5px 2px rgba(0, 0, 0, 0.5);
  border-radius: 8px;
  color: #fafafa;
  padding: 24px 16px;
  font: message-box;

  &:not([hidden]) {
    display: flex;
    will-change: transform;
  }

  &[onscreen] {
    transform: translate(-50%, 50px);
  }

  &[ontop] {
    /* Use -10px to hide the border and border-radius on the top */
    transform: translate(-50%, -10px);
  }

  :root[macOSNativeFullscreen] &[ontop] {
    transform: translate(-50%, 80px);
  }

  &:is([data-identity="verifiedDomain"], [data-identity="unknownIdentity"])::before {
    content: "";
    background-size: cover;
    margin: 0;
    width: 24px;
    height: 24px;
    -moz-context-properties: fill;
    fill: currentColor;
  }

  &[data-identity="verifiedDomain"]::before {
    background-image: url("chrome://global/skin/icons/security.svg");
  }

  &[data-identity="unknownIdentity"]::before {
    background-image: url("chrome://global/skin/icons/security-broken.svg");
  }
}

.pointerlockfswarning-domain-text,
.pointerlockfswarning-generic-text {
  font-size: 21px;
  margin: 0 16px;
  word-wrap: break-word;
  /* We must specify a min-width, otherwise word-wrap:break-word doesn't work. Bug 630864. */
  min-width: 1px;
}

.pointerlockfswarning-domain-text:not([hidden]) + .pointerlockfswarning-generic-text {
  display: none;
}

.pointerlockfswarning-domain {
  font-weight: bold;
  margin: 0;
}

#fullscreen-exit-button {
  pointer-events: auto;
  margin: 0;
}
