@import '_content/Blazor.Bootstrap/Blazor.Bootstrap.olwso25aue.bundle.scp.css';

/* /Components/DateBox.razor.rz.scp.css */
/* Bootstrap 5.3 form-floating adds a ::after pseudo-element to the label using
   background-color: var(--bs-body-bg) to mask the input's top border when the label
   floats up. In dark mode app.css sets --bs-body-bg: #111, making it appear black.
   Setting it transparent removes the coloured box without affecting the animation. */
.form-floating > .form-control:focus ~ label[b-5dxi40ugwj]::after,
.form-floating > .form-control:not(:placeholder-shown) ~ label[b-5dxi40ugwj]::after {
    background-color: transparent;
}

/* Date inputs always display their browser-native format (e.g. mm/dd/yyyy),
   so the label must always remain in the floated position to avoid overlapping. */
.form-floating > input[type="date"] ~ label[b-5dxi40ugwj],
.form-floating > input[type="date"]:focus ~ label[b-5dxi40ugwj] {
    transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);
    opacity: 0.65;
}
/* /Components/FieldSet.razor.rz.scp.css */
.fieldset[b-bhue3nigav] {
    /*display: flex;
    flex-direction: column;
    gap: 0.5rem;
    padding: 1rem;
    border: 1px solid var(--border-color);
    border-radius: 0.25rem;
    background-color: var(--background-color);*/

    margin: 32px 0 0 0;
    height: auto; /* Changed from 90% to auto to prevent overflow issues */
    min-height: 100px; /* Ensure minimum height for content */
    border-radius: 20px;
    border: 1px #ccc solid;
 /*   border: 1px solid var(--border-color);*/
    color: black;
    padding: 0 8px 20px 8px; /* Added bottom padding to account for label positioning */
}

    .fieldset .label[b-bhue3nigav] {
        position: relative;
        display: inline-block;
        top: -15px;
        left: 6px;
        min-width: 300px;
        max-width: 90%;
        background-color: #ddd;
 /*       background-color: var(--background-color);*/
        padding: 2px 10px;
        border-radius: 20px;
        border: 1px #ccc solid;
        font-size: large;
        z-index: 1; /* Ensure label doesn't overlap content below */
        /*    font-weight: bold;
    */
    }

    .fieldset.collapsable[b-bhue3nigav] {
        height: auto; /* Works, but kills the animation */
    }

        .fieldset.collapsable.collapsed[b-bhue3nigav] {
            transition: all 0.6s;
            height: 0px;
        }

            .fieldset.collapsable.collapsed .body[b-bhue3nigav] {
                display: none;
            }

        .fieldset.collapsable .label[b-bhue3nigav]::after {
            position: absolute;
            font-size: 32px;
            content: "\25B4"; /* Up chevron */
            top: -10px;
            right: 12px;
            transform: rotate(60deg);
            transition: all 0.6s;
            cursor: pointer;
        }

        .fieldset.collapsable.collapsed .label[b-bhue3nigav]::after {
            transform: rotate(0deg);
        }

    .fieldset .body[b-bhue3nigav] {
        max-height: 300px;
        overflow-y: auto;
        width: 100%;
    }

html[data-bs-theme="dark"] .fieldset[b-bhue3nigav] {
    border-color: grey;
    color: white;
}

    html[data-bs-theme="dark"] .fieldset .label[b-bhue3nigav] {
        border-color: grey;
        background-color: #003;
    }
/* /Components/HoursMinutesBox.razor.rz.scp.css */
.hours-minutes-box[b-tfbq9hbitu] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 2px;
}

    .hours-minutes-box input[b-tfbq9hbitu] {
        width: 35px !important;
        height: 30px;
        padding: 2px 4px;
        font-size: 0.85rem;
        border: 1px solid #ced4da;
        border-radius: 4px;
    }

        .hours-minutes-box input:focus[b-tfbq9hbitu] {
            border-color: #ffc107;
            box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.25);
        }

    .hours-minutes-box .text-muted[b-tfbq9hbitu] {
        font-size: 0.75rem;
        color: #6c757d !important;
    }

    .hours-minutes-box input.near-limit[b-tfbq9hbitu] {
        border-color: #ffc107;
        background-color: #fff3cd;
    }

    .hours-minutes-box input.at-limit[b-tfbq9hbitu] {
        border-color: #dc3545;
        background-color: #f8d7da;
    }

/* /Components/Select.razor.rz.scp.css */
/* Bootstrap 5.3 form-floating adds a ::after pseudo-element to the label using
   background-color: var(--bs-body-bg) to mask the input's top border when the label
   floats up. In dark mode app.css sets --bs-body-bg: #111, making it appear black.
   Setting it transparent removes the coloured box without affecting the animation.
   For form-select the label is always floated so no :focus/:placeholder-shown conditions are needed. */
.form-floating > .form-select ~ label[b-kpimj41fsr]::after {
    background-color: transparent;
}
/* /Components/Steps.razor.rz.scp.css */
.steps-container[b-z47ye5nt2s] {
    display: flex;
    align-items: center;
    width: 100%;
    padding: 20px 0;
}

.step-item[b-z47ye5nt2s] {
    display: flex;
    align-items: center;
    flex: 1;
}

.step-content[b-z47ye5nt2s] {
    display: flex;
    flex-direction: column;
    padding: 0;
    width: 100px;
    height: 100px;
    justify-content: center;
    text-align: center;
    border: 8px solid;
    background-color: white;
    position: relative;
    z-index: 1;
}

html[data-bs-theme="dark"] .step-content[b-z47ye5nt2s] {
    background-color: #333;
    color: #ddd;
}

.step-round[b-z47ye5nt2s] {
    border-radius: 50%;
}

.step-square[b-z47ye5nt2s] {
    border-radius: 8px;
    border-width: 4px;
    height: 76px;
}

.step-label[b-z47ye5nt2s] {
    font-size: 12px;
    font-weight: 500;
    margin-top: 5px;
}

.step-connector[b-z47ye5nt2s] {
    flex: 1;
    height: 2px;
    margin: 0 1px;
    border-top: 2px solid gray;
}

.step-complete[b-z47ye5nt2s] {
    border-color: #28a745;
    color: #28a745;
}

.step-complete .step-connector[b-z47ye5nt2s] {
    border-top-color: #28a745;
}

.step-in-progress[b-z47ye5nt2s] {
    border-color: #dc3545;
    color: #dc3545;
}

.step-in-progress .step-connector[b-z47ye5nt2s] {
    border-top-color: #6c757d;
    border-top-style: dashed;
}

.step-not-started[b-z47ye5nt2s] {
    border-color: #6c757d;
    border-style: dashed;
    color: #6c757d;
}

.step-not-started .step-connector[b-z47ye5nt2s] {
    border-top-color: #6c757d;
    border-top-style: dashed;
}

.pulse[b-z47ye5nt2s] {
    animation: pulse-animation-b-z47ye5nt2s 1.2s ease-in-out infinite;
}

@keyframes pulse-animation-b-z47ye5nt2s {
    0% {
        opacity: 1;
        transform: scale(1);
    }
    50% {
        opacity: 0.7;
        transform: scale(1.4);
    }
    100% {
        opacity: 1;
        transform: scale(1);
    }
}
/* /Components/TextBox.razor.rz.scp.css */

.auto-resize-textarea[b-hahgxsy34b] {
    resize: none;
    overflow: hidden;
    min-height: 40px;
    transition: height 0.1s ease;
}

/* Bootstrap 5.3 form-floating adds a ::after pseudo-element to the label using
   background-color: var(--bs-body-bg) to mask the input's top border when the label
   floats up. In dark mode app.css sets --bs-body-bg: #111, making it appear black.
   Setting it transparent removes the coloured box without affecting the animation. */
.form-floating > .form-control:focus ~ label[b-hahgxsy34b]::after,
.form-floating > .form-control:not(:placeholder-shown) ~ label[b-hahgxsy34b]::after {
    background-color: transparent;
}
/* /Components/TextBoxInt.razor.rz.scp.css */

.auto-resize-textarea[b-2f6d0k9p6k] {
    resize: none;
    overflow: hidden;
    min-height: 40px;
    transition: height 0.1s ease;
}
/* /Pages/Dashboard/Index.razor.rz.scp.css */
/* Same fade-rise-in keyframes as the header title/brand text (defined in
   app.css, which every page loads) - scoped here so only Dashboard's own
   cards animate, not .card usage elsewhere in the app. */
.card[b-kd208fo7f2] {
    opacity: 0;
    animation: fade-rise-in 0.6s ease-out forwards;
}

@media (prefers-reduced-motion: reduce) {
    .card[b-kd208fo7f2] {
        animation: none;
        opacity: 1;
    }
}
