/* ********* */
/* SAFE AREA */

.safe-area-pub {
	padding-top: env(safe-area-inset-top, 0px) !important;
	padding-bottom: env(safe-area-inset-bottom, 0px) !important;
}

.app-private .navbar.fixed-top {
	padding-top: calc(0.5rem + env(safe-area-inset-top, 0px)) !important;
	padding-bottom: 0.5rem;
}

.app-private #sidebar .sidebar-header {
	padding: 0.5rem 1rem; text-align: left; background: #1453b9;
	padding-top: calc(0.5rem + env(safe-area-inset-top, 0px)) !important;
}

.app-private > .tab-container {
	margin-top: calc(5rem + env(safe-area-inset-top, 0px));
	padding-bottom: calc(1.0rem + env(safe-area-inset-bottom, 0px)) !important;
}

body[data-size="xs"] .app-private .navbar.fixed-top {
	padding-top: calc(0.0rem + env(safe-area-inset-top, 0px)) !important;
	padding-bottom: 0.0rem;
}

body[data-size="xs"] .app-private #sidebar .sidebar-header {
	padding: 0.0rem 1rem; text-align: left; background: #1453b9;
	padding-top: calc(0.0rem + env(safe-area-inset-top, 0px)) !important;
}

body[data-size="xs"] .app-private > .tab-container {
	margin-top: calc(4.5rem + env(safe-area-inset-top, 0px));
}

/* *** */
.app-private .dialog h4 {
	padding: 1.5rem 2rem !important;
	margin: -1rem -1rem 1.5rem -1rem !important;
	padding-top: calc(1.5rem + env(safe-area-inset-top, 0px)) !important;
}

.app-private .dialog .dialog-content {
	padding: 1rem 1rem !important;
	padding-bottom: calc(1.0rem + env(safe-area-inset-bottom, 0px)) !important;
}

.app-private .dialog h4 + div {
	margin: 0.6rem 0rem !important;
}

body[data-size="xs"] .app-private .dialog h4 {
	padding: 1.0rem 2rem !important;
	margin: -0.5rem 0rem 1.5rem 0rem !important;
	padding-top: calc(1.0rem + env(safe-area-inset-top, 0px)) !important;
}

body[data-size="xs"] .app-private .dialog .dialog-content {
	padding: 0.5rem 0rem !important;
	padding-bottom: calc(1.0rem + env(safe-area-inset-bottom, 0px)) !important;
}

body[data-size="xs"] .app-private .dialog h4 + div {
	margin: 0.6rem 0rem !important;
}

/* ** */
#popups:not(.active) {
	display: none !important;
}

#popups {
    background: rgba(0,0,0,0.75); position: fixed; left: 0; top: 0; width: 100vw; height: 100vh; z-index: 99999;
}

#popups_list {
    text-align: center;
}

#popups_list > div {
    background: #fff; position: relative;
    padding: 1rem; margin: 0.5rem auto; border-radius: 0.5rem; overflow: hidden;
    box-shadow: 0 0 16px #000;
}

#popups_list > div > div {
    background: #fff; margin: -1rem; padding: 0.5rem; text-align: left; color: #888;
}

#popups_list > div > p {
    margin: 0; margin-top: 1.25rem; padding-bottom: 0.70rem; font-size: 1.25em; line-height: 1.2; margin-bottom: 0.5rem;
}

#popups_list > div:not(:first-child) > b {
	display: none;
}

@keyframes swipe-up {
    0% { transform: translateY(0px); opacity: 1; }
    100% { transform: translateY(-200px); opacity: 0; }
}

[data-anim=swipe-up] {
    animation: 0.2s ease-in swipe-up both;
}

/* *** */
.tiny-profile {
    position: relative; padding-bottom: 0.9rem; border-top: 3px solid #ddd; margin-top: 1rem; padding-top: 0.25rem;
}

.tiny-profile img {
    position: absolute; left: 0.5rem; top: 0.8rem;
    width: 4rem;
}

.tiny-profile em {
    display: block; margin-left: 5.5rem; font-style: normal; font-weight: 900; font-size: 1rem; margin-bottom: 0.2rem;
}

.tiny-profile b {
    display: block; margin-left: 5.5rem; font-style: normal; font-weight: 500; text-transform: uppercase; color: #777; font-size: 0.8em;
}

.tiny-profile b > span, .tiny-profile b > span a {
    display: block; font-weight: 900; color: #444; font-size: 0.8rem;
}

/* ** */
.mini-title {
    display: inline-block; width: 49%; padding: 0.5rem; border-radius: 0.3rem; margin: 0.2rem 0;
    border: 1px solid #ddd;
}

.mini-title > b {
    text-transform: uppercase; font-size: 0.7rem; color: #556;
}

.mini-title > span {
    display: block; font-weight: 500;
}

/* ** */
.mini-error {
    display: block; background: #fff0f0; padding: 0.5rem 0; margin-bottom: 0.5rem; text-align: center;
}

/* ** */
.phone-help {
    position: absolute; top: 50%; right: 2rem; transform: translateY(-50%); color: #fff;
}

.phone-help > b {
    text-transform: uppercase; color: rgba(255,255,255,0.6); font-weight: 400;
}

.phone-help > a {
    display: block; color: #fff; text-decoration: underline; font-size: 1.1em; margin-top: 0.1rem;
}

/* ** */
.mini-reviews > div {
    position: relative; border: 1px solid #ddd; padding: 0.5rem 1rem; margin-bottom: 1rem;
    box-shadow: 0 0.2rem 0.5rem -0.4rem rgba(0,0,0,0.5); border-radius: 0.5rem;
}

.mini-reviews > div > img {
    float: left; width: 3.5rem; border-radius: 999px;
    box-shadow: 0 0 0.5rem rgba(0,0,0,0.5);
    margin-right: 0.8rem;
}

.mini-reviews > div > b {
    display: block; margin-top: 0.2rem;
}

.mini-reviews > div > span:not(.rating-score) {
    display: block; font-size: 0.8rem;
}

.mini-reviews > div > em {
    display: block; margin-top: 0.5rem; font-style: normal;
}

/* ** */
.page.mb-5 {
    margin-top: 0 !important; margin-bottom: 1.5rem !important;
}

.page h1.mb-4 {
    margin-bottom: 0.5rem !important;
    padding-top: 0.3rem;
    padding-bottom: 0.3rem;
}

.page.bleed-up {
    margin-top: -28px !important;
}
