﻿@import url('open-iconic/font/css/open-iconic-bootstrap.min.css');

#blazor-error-ui {
    background: lightyellow;
    bottom: 0;
    box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2);
    display: none;
    left: 0;
    padding: 0.6rem 1.25rem 0.7rem 1.25rem;
    position: fixed;
    width: 100%;
    z-index: 1000;
}

    #blazor-error-ui .dismiss {
        cursor: pointer;
        position: absolute;
        right: 0.75rem;
        top: 0.5rem;
    }

.loading-progress {
    position: relative;
    display: block;
    width: 8rem;
    height: 8rem;
    margin: 20vh auto 1rem auto;
}

    .loading-progress circle {
        fill: none;
        stroke: #e0e0e0;
        stroke-width: 0.6rem;
        transform-origin: 50% 50%;
        transform: rotate(-90deg);
    }

        .loading-progress circle:last-child {
            stroke: #1b6ec2;
            stroke-dasharray: calc(3.141 * var(--blazor-load-percentage, 0%) * 0.8), 500%;
            transition: stroke-dasharray 0.05s ease-in-out;
        }

.loading-progress-text {
    position: absolute;
    text-align: center;
    font-weight: bold;
    inset: calc(20vh + 3.25rem) 0 auto 0.2rem;
}

    .loading-progress-text:after {
        content: var(--blazor-load-percentage-text, "Loading");
    }

@media (min-width: 1200px) {
    .container {
        max-width: 1140px;
    }
}

/* Please see documentation at https://docs.microsoft.com/aspnet/core/client-side/bundling-and-minification
for details on configuring this project to bundle and minify static web assets. */

a.navbar-brand {
    white-space: normal;
    text-align: center;
    word-break: break-all;
}

a {
    /* Provide sufficient contrast against white background */
    color: #0366d6;
    /* remove hyperlink underlines */
    text-decoration: none;
}

.btn-primary {
    color: #fff;
    background-color: #1b6ec2;
    border-color: #1861ac;
}

.nav-pills .nav-link.active, .nav-pills .show > .nav-link {
    color: #fff;
    background-color: #1b6ec2;
    border-color: #1861ac;
}

.border-top {
    border-top: 1px solid #e5e5e5;
}

.border-bottom {
    border-bottom: 1px solid #e5e5e5;
}

.box-shadow {
    box-shadow: 0 .25rem .75rem rgba(0, 0, 0, .05);
}

button.accept-policy {
    font-size: 1rem;
    line-height: inherit;
}

.text-container {
    padding-left: 15px;
    padding-right: 15px;
}

.no-padding {
    padding: 0;
}

.wrapper {
    position: relative;
}

.right, .left {
    width: 50%;
    position: absolute;
}

.right {
    right: 0;
    text-align: right;
}

.left {
    left: 0;
    text-align: left;
}

.bordered {
    border: 1px darkgrey solid;
}

a.no-link-underline {
    text-decoration: none;
}

.validation-message {
    color: #dc3545 !important;
}

.admin-info-container {
    border: 1px solid #ccc;
    background-color: #f8f9fa;
    border-radius: 4px;
}

.btn-admin {
    background-color: #6E00B3;
}

    .btn-admin:hover {
        background-color: #9D00FF;
    }

.toggle-btn {
    all: unset; /* resets most inherited and default styles */
    display: inline; /* buttons default to inline-block */
    margin: 0; /* remove any margin */
    padding: 0; /* remove default padding */
    border: none; /* remove default border */
    background: none; /* remove background */
    color: inherit; /* inherit text color */
    font: inherit; /* inherit font family/size/etc */
    line-height: normal; /* reset line-height */
    text-align: inherit; /* reset alignment */
    cursor: pointer; /* keep pointer for clickability */
    outline: none; /* remove focus ring */
    box-shadow: none; /* remove shadows */
    -webkit-appearance: none; /* remove WebKit button styles */
    -moz-appearance: none; /* remove Firefox button styles */
    appearance: none; /* standard appearance reset */
    -webkit-tap-highlight-color: transparent; /* remove mobile tap highlight */
}

.arrow {
    font-size: 14px;
    color: darkgrey;
    transition: color 0.2s ease-in-out, transform 0.2s ease-in-out;
}

.toggle-btn:hover .arrow,
.toggle-btn:focus .arrow {
    color: grey;
}

.toggle-btn:focus {
    outline: none !important;
}

/* image Preview */
.preview-overlay {
    position: fixed;
    inset: 0;
    width: 100vw;
    height: 100vh;
    background: rgba(0, 0, 0, 1);
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 9999;
}

.preview-container {
    position: relative;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.preview-image {
    max-height: 95vh;
    max-width: 95vw;
    object-fit: contain;
}

.preview-title {
    position: absolute;
    bottom: 30px;
    color: white;
    font-size: 18px;
}

.preview-close {
    position: absolute;
    top: 20px;
    right: 30px;
    font-size: 32px;
    background: none;
    border: none;
    color: white;
    cursor: pointer;
}

body.preview-open {
    overflow: hidden;
}

/* mobile */
@media (min-width: 320px) and (max-width: 768px) {
    body {
        font-size: 16px;
    }

    .nav-link {
        font-size: 16px;
    }
}

/* screen */
@media (min-width: 769px) {
    body {
        font-size: 14px;
    }

    .nav-link {
        font-size: 14px;
    }
}
