/* Copyright 2015-2017 Parity Technologies (UK) Ltd. /* This file is part of Parity. /* /* Parity is free software: you can redistribute it and/or modify /* it under the terms of the GNU General Public License as published by /* the Free Software Foundation, either version 3 of the License, or /* (at your option) any later version. /* /* Parity is distributed in the hope that it will be useful, /* but WITHOUT ANY WARRANTY; without even the implied warranty of /* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the /* GNU General Public License for more details. /* /* You should have received a copy of the GNU General Public License /* along with Parity. If not, see . */ $modalMargin: 1.5em; $modalPadding: 1.5em; $modalPaddingChild: 3em; $modalBackZ: 2500; /* This should be the default case, the Portal used as a stand-alone modal */ $modalBottom: $modalMargin; $modalLeft: $modalMargin; $modalRight: $modalMargin; $modalTop: $modalMargin; $modalZ: 3500; /* This is the case where popped-up over another modal, Portal or otherwise */ $popoverBottom: $modalMargin; $popoverLeft: $modalMargin; $popoverRight: $modalMargin; $popoverTop: 20vh; $popoverZ: 3600; $backgroundFade: rgba(0, 0, 0, 0.35); $backgroundOverlay: rgba(255, 255, 255, 0.95); .backOverlay { background-color: $backgroundFade; position: fixed; top: 0; right: 0; bottom: 0; left: 0; z-index: $modalBackZ; } .overlay { background-color: $backgroundOverlay; border: 1px solid whitesmoke; box-sizing: border-box; display: flex; flex-direction: column; justify-content: space-between; padding: $modalPadding; position: fixed; * { min-width: 0; } &.modal { z-index: $modalZ; &:not(.small) { bottom: $modalBottom; left: $modalLeft; right: $modalRight; top: $modalTop; } /* TODO: Small Portals don't adjust their overall height like we have with the /* rest, so really tiny screens and large small Portals (it shouldn't be be done, /* but may well be) will scretch to non-visible areas. */ &.small { margin: 1.5em auto; max-width: 768px; position: relative; width: 75%; } } &.popover { left: $popoverLeft; top: $popoverTop; height: calc(100vh - $popoverTop - $popoverBottom); width: calc(100vw - $popoverLeft - $popoverRight); z-index: $popoverZ; } .buttonRow { display: flex; flex-direction: row; flex-wrap: nowrap; justify-content: flex-end; padding: $modalPadding 0 0 0; /*button:not([disabled]) { color: white !important; svg { fill: white !important; } }*/ } .childContainer { flex: 1; margin: 0 -$modalPadding; overflow-x: hidden; overflow-y: auto; padding: 0 $modalPaddingChild; z-index: 1; } .closeIcon { font-size: 3em; position: absolute; right: 1rem; top: 1.5rem; z-index: 100; i { font-size: inherit; } &:hover { cursor: pointer; opacity: 0.5; } } .titleRow { margin-bottom: $modalPadding; } }