/* _content/WDOT_TAPWEB.SharedComponents/Template/Calendar/CalendarBase.razor.rz.scp.css */
.calendar-base[b-4cw5yx8cyx] {
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
    overflow: hidden;
    border: 1px solid grey;
    border-radius: 0.3rem 0.5rem 0 0;
    background: #1c2e3d;
    color: #f3f3f3;
    position: relative;
}

    .calendar-base .body-container[b-4cw5yx8cyx] {
        position: relative;
    }

    .calendar-base .schedule-body[b-4cw5yx8cyx] {
        width: 100%;
        height: 48rem;
        overflow-x: auto;
        overflow-y: hidden;
        color: black;
    }

        .calendar-base .schedule-body.dupe[b-4cw5yx8cyx] {
            position: absolute;
            margin-left: -200%;
        }


            .calendar-base .schedule-body.fly-in-forward[b-4cw5yx8cyx] {
                animation: 0.4s ease 0s fly-in-forward-b-4cw5yx8cyx;
            }

            @keyframes fly-in-forward-b-4cw5yx8cyx {
                from {
                    margin-left: 200%;
                }
                to {
                    margin-left: 0%;
                }
            }

            .calendar-base .schedule-body.fly-in-backward[b-4cw5yx8cyx] {
                animation: 0.4s ease 0s fly-in-backward-b-4cw5yx8cyx;
            }

            @keyframes fly-in-backward-b-4cw5yx8cyx {
                from {
                    margin-left: -200%;
                }
                to {
                    margin-left: 0%;
                }
            }

        .calendar-base .schedule-body.dupe.fly-out-forward[b-4cw5yx8cyx] {
            animation: 0.4s ease 0s fly-out-forward-b-4cw5yx8cyx;
        }

        @keyframes fly-out-forward-b-4cw5yx8cyx {
            from {
                margin-left: 0%;
            }

            to {
                margin-left: -200%;
            }
        }

        .calendar-base .schedule-body.dupe.fly-out-backward[b-4cw5yx8cyx] {
            animation: 0.4s ease 0s fly-out-backward-b-4cw5yx8cyx;
        }

        @keyframes fly-out-backward-b-4cw5yx8cyx {
            from {
                margin-left: 0%;
            }

            to {
                margin-left: 200%;
            }
        }

@media only screen and (max-width: 600px) {
    .calendar-base .schedule-body.dupe[b-4cw5yx8cyx] {
        /*margin-top: calc(15rem + 5px);*/
    }
}
/* _content/WDOT_TAPWEB.SharedComponents/Template/Calendar/CalendarDay.razor.rz.scp.css */
.calendar-day[b-be5hh1nx5l] {
    height: 100%;
    border: 0.5px solid lightgrey;
    background: white;
    overflow-y: auto;
    background: white;
    display: inline-block;
    transition: width 0.5s;
    white-space: normal;
}

    .calendar-day.locked[b-be5hh1nx5l] {
        background: #dbdada;
        cursor: not-allowed;
    }

        .calendar-day.locked *[b-be5hh1nx5l] {
            pointer-events: none;
            user-select: none;
        }

    .calendar-day.out-of-month[b-be5hh1nx5l] {
        background: #d8e8e5;
        opacity: 0.7;
    }

    .calendar-day .day-number[b-be5hh1nx5l] {
        font-size: 12px;
        margin: 4px 0 0 4px;
    }

    .calendar-day .day-content[b-be5hh1nx5l] {
        padding: 0.2rem;
    }

    .calendar-day[b-be5hh1nx5l]  .drop-area {
        display: inline-block;
        width: 100%;
        /* 100% causes scrollbar on Android */
        min-height: 99.9%;
    }
/* _content/WDOT_TAPWEB.SharedComponents/Template/Calendar/CalendarToolbar.razor.rz.scp.css */
.calendar-toolbar[b-7y7o71xgt7] {
    display: flex;
    flex-direction: row;
    width: 100%;
    border-bottom: 1px solid black;
    background: rgb(104 183 253);
    background: linear-gradient(0deg, rgb(25 68 107) 0%, rgb(104 183 253) 7%, rgb(88 167 216) 100%);
}

.title-bar[b-7y7o71xgt7] {
    display: flex;
    flex-direction: column;
    min-height: 120px;
}

.title-bar > div[b-7y7o71xgt7] {
    margin-top: auto;
    margin-bottom: auto;
    display: flex;
    flex-direction: column;
}

.title-bar div *[b-7y7o71xgt7] {
    margin: 0.2rem auto;
}

    .calendar-toolbar .page-controls[b-7y7o71xgt7] {
        display: flex;
        flex-direction: row;
        margin: auto;
        margin-right: 0;
    }

        .calendar-toolbar .page-controls[b-7y7o71xgt7]  .page-left,
        .calendar-toolbar .page-controls[b-7y7o71xgt7]  .page-right {
            cursor: pointer;
            width: 50px;
            font-size: 30px;
        }

        .calendar-toolbar .page-controls .page-left[b-7y7o71xgt7] {
            margin-right: 2rem;
        }

    .calendar-toolbar .mode-escape[b-7y7o71xgt7] {
        display: flex;
        margin: auto;
        margin-left: 1rem;
        cursor: pointer;
    }

        .calendar-toolbar .mode-escape .escape-caret[b-7y7o71xgt7] {
            margin-top: auto;
            margin-bottom: auto;
            margin-right: 0.5rem;
        }

        .calendar-toolbar .mode-escape .escape-label[b-7y7o71xgt7] {
            font-size: 11px;
            margin-top: auto;
            margin-bottom: auto;
        }

    .calendar-toolbar .mode-switch[b-7y7o71xgt7] {
        display: flex;
        flex-direction: row;
        margin-left: 1rem;
    }

        .calendar-toolbar .mode-switch div[b-7y7o71xgt7] {
            padding: 0.5rem 1rem;
            cursor: pointer;
        }

            .calendar-toolbar .mode-switch div.active[b-7y7o71xgt7] {
                background: #1c2e3d;
            }

@media only screen and (max-width: 600px) {
    .calendar-toolbar[b-7y7o71xgt7] {
        flex-direction: column;
    }

        .calendar-toolbar .page-controls[b-7y7o71xgt7],
        .calendar-toolbar .mode-escape[b-7y7o71xgt7],
        .calendar-toolbar .mode-switch[b-7y7o71xgt7] {
            margin: 0;
            margin-left: auto;
            margin-right: auto;
            margin-top: 1rem;
        }
}
/* _content/WDOT_TAPWEB.SharedComponents/Template/Calendar/CalendarWeek.razor.rz.scp.css */
.calendar-week[b-8rdbvw69cc] {
    width: 100%;
    min-width: 1000px;
    white-space: nowrap;
    overflow: hidden;
    transition: height 0.5s;
}
/* _content/WDOT_TAPWEB.SharedComponents/Template/Dragging/DragItem.razor.rz.scp.css */
.drag-item[b-d0misqi3yj] {
    cursor: grab;
}
/* _content/WDOT_TAPWEB.SharedComponents/Template/Dragging/DragReceiver.razor.rz.scp.css */
.drop .drop-area[b-ct42mfeiw2]  * {
    pointer-events: none;
}

    .drop .drop-area[b-ct42mfeiw2]  *:hover {
        pointer-events: all;
    }
/* _content/WDOT_TAPWEB.SharedComponents/Template/Reordering/ReorderList.razor.rz.scp.css */
.reorder-list[b-fd5b0qm5xt] {
    display: flex;
    flex-direction: column;
    flex-grow: 1;
    flex-shrink: 1;
}

.locked .reorder-list[b-fd5b0qm5xt]  .reorder-drop {
    display: none !important;
}

.reorder-list[b-fd5b0qm5xt]  .reorder-drop {
    display: flex;
    min-height: 0;
    height: 0;
    background: white;
    transition: min-height 0.1s, opacity 0.1s;
    overflow: hidden;
}

.drop .reorder-list[b-fd5b0qm5xt]  .reorder-drop.allowed {
    display: flex;
    opacity: 1;
    min-height: 4rem;
}

.invalid-drop .reorder-list[b-fd5b0qm5xt]  .reorder-drop.entered {
    border: 2px dashed red;
    color: red;
}

.valid-drop .reorder-list[b-fd5b0qm5xt]  .reorder-drop.entered {
    border: 2px dashed green;
    color: green;
}

.mid-drop .reorder-list[b-fd5b0qm5xt]  .reorder-drop.allowed {
    border: 1px dashed black;
    color: black;
}
/* _content/WDOT_TAPWEB.SharedComponents/Template/Shared/BarCodeComponents/BarCode.razor.rz.scp.css */
.convertToBarCode2[b-w3hj0xsyn9] {
    font-family: 'Libre Barcode 128 Text', cursive !important;
    font-size: 3rem
}
/* _content/WDOT_TAPWEB.SharedComponents/Template/Shared/CalendarComponent/CalendarWeekDay.razor.rz.scp.css */
.calendar-day[b-m2j1s3vvnw] {
    display: inline-block;
    box-sizing: border-box;
    border-right: 1px solid grey;
    border-bottom: 1px solid grey;
    width: 14.28%;
    padding: 0.5rem;
    min-height: 8rem;
    background: white;
    vertical-align: top;
    cursor: pointer;
    overflow: hidden;
    position: relative;
    min-height: 100%;
    height: 30rem;
    overflow-y: auto;
 
}
/* _content/WDOT_TAPWEB.SharedComponents/Template/Shared/CalendarComponent/CustomCalendar.razor.rz.scp.css */

.topBar[b-nj5vnorqn2] {
    display: flex;
    width: 100%;
    justify-content: space-between;
    border: 1px solid #777;
    padding: 8px;
}



@media (max-width: 768px) {
    .calendar-container[b-nj5vnorqn2] {
        width: 200%;
        transform: scale(.5);
        transform-origin: top left;
    }

    .topBar[b-nj5vnorqn2] {
        display: flex;
        width: 100%;
        justify-content: space-between;
        padding: 15px;
    }

    .day-labels[b-nj5vnorqn2] {
        font-size: .84rem;
    }
}
/* _content/WDOT_TAPWEB.SharedComponents/Template/Shared/CalendarComponent/CustomWeekCalendar.razor.rz.scp.css */

.topBar[b-z0od9fel80] {
    display: flex;
    width: 100%;
    justify-content: space-between;
    border: 1px solid #777;
    padding: 8px;

    margin-bottom: 1rem;
}

.weeks-container[b-z0od9fel80] {
    position: relative;
    overflow-x: hidden;
}


.days_container[b-z0od9fel80] {
    border-left: 1px solid black;
    border-top: 1px solid black;
    z-index: 10;
}

.dummy_days_container[b-z0od9fel80] {
    border-left: 1px solid black;
    border-top: 1px solid black;
    position: absolute;
    top: 0;
    z-index: 1;
}

.hide[b-z0od9fel80] {
    visibility: hidden;
}


.day-labels[b-z0od9fel80] {
    display: flex;
    background: lightgrey;

}

.day-labels div[b-z0od9fel80] {
    display: inline-block;
    box-sizing: border-box;
    width: 14.28%;
    text-align: left;
    font-weight: 400;
    font-size: 1.2rem;
    border-right: 1px solid grey;
    border-bottom: 1px solid grey;
    height: 2rem;
    padding: 3px;
}

    .day-labels div.today[b-z0od9fel80] {
        background: #7178c7;
        display: inline-block;
        box-sizing: border-box;
        width: 14.28%;
        text-align: left;
        font-weight: 400;
        font-size: 1.2rem;
        border-right: 1px solid grey;
        border-bottom: 1px solid grey;
        height: 2rem;
        padding: 3px;
        color: #ffffff
    }


.controls[b-z0od9fel80] {
    display: flex;
    margin-bottom: 1rem;
        
}

.controls__info[b-z0od9fel80] {
    flex: 0 0 30%;
    text-align: center;
    align-self:end;

}
.controls__info--week[b-z0od9fel80] {

    transform: translateY(-5px);
    font-size: 1.2rem;

}

.controls__info--week-range[b-z0od9fel80] {
    transform: translateY(-6px);
    font-weight: 500;
    font-size: 1rem;
}

.controls__button--right[b-z0od9fel80] {
    flex: 0 0 35%;
    text-align: left
}

.controls__button--left[b-z0od9fel80] {
    flex: 0 0 35%;
    text-align: right
}



@media (max-width: 768px) {
    .calendar-container[b-z0od9fel80] {
        width: 200%;
        transform: scale(.5);
        transform-origin: top left;
    }

    .topBar[b-z0od9fel80] {
        display: flex;
        width: 100%;
        justify-content: space-between;
        padding: 15px;
    }

    .day-labels[b-z0od9fel80] {
        font-size: .84rem;
    }
}




/*********** Week slide animations ***********/
.move-to-left[b-z0od9fel80] {
    animation-name: moveLeft-b-z0od9fel80;
    animation-iteration-count: 1;
    animation-timing-function: ease;
    animation-fill-mode: forwards;
}

@keyframes moveLeft-b-z0od9fel80 {
    from {
        transform: translateX(0px);
    }
    to {
        transform: translateX(-2000px);
    }
}

.move-to-left-offscreen[b-z0od9fel80] {
    animation-name: moveLeftOffscreen-b-z0od9fel80;
    animation-iteration-count: 1;
    animation-timing-function: ease;
    animation-fill-mode: forwards;
}

@keyframes moveLeftOffscreen-b-z0od9fel80 {
    from {
        transform: translateX(2000px);
    }
    to {
        transform: translateX(0px);
    }
}

.move-to-right[b-z0od9fel80] {
    animation-name: moveRight-b-z0od9fel80;
    animation-iteration-count: 1;
    animation-timing-function: ease;
    animation-fill-mode: forwards;
}

@keyframes moveRight-b-z0od9fel80 {
    from {
        transform: translateX(0px);
    }
    to {
        transform: translateX(2000px);
    }
}

.move-to-right-offscreen[b-z0od9fel80] {
    animation-name: moveRightOffscreen-b-z0od9fel80;
    animation-iteration-count: 1;
    animation-timing-function: ease;
    animation-fill-mode: forwards;
}

@keyframes moveRightOffscreen-b-z0od9fel80 {
    from {
        transform: translateX(-2000px);
    }
    to {
        transform: translateX(0px);
    }
}

.dummy-off-screen[b-z0od9fel80] {
    transform: translateX(-2000px);
}
/* _content/WDOT_TAPWEB.SharedComponents/Template/Shared/FormComponents/NKDayOfWeekSelector.razor.rz.scp.css */
/* Element spacing and responsitivity */
.days-container[b-2eht27wjb8] {
    display: flex;
    flex-direction: row;
    margin: 1em 0em;
}

.day-container[b-2eht27wjb8] {
    position: relative;
}

input[type="checkbox"][b-2eht27wjb8] {
    /* Remove default checkbox styling and hide it */
    -webkit-appearance: none;
    appearance: none;
    visibility: hidden;
}

/* Add unchecked styles */
label[b-2eht27wjb8] {
    position: absolute;
    left: 0;
    top: 0;
    border-radius: 50%;

    display: grid;
    place-content: center;
}

label:hover[b-2eht27wjb8] {
    cursor: pointer;
}
/* _content/WDOT_TAPWEB.SharedComponents/Template/Shared/PdfViewer/NkPdfViewer.razor.rz.scp.css */
[b-lngh171wvb] .viewerContainer {
    background-color: #808080;
    margin: 0;
    padding: 0;
}

[b-lngh171wvb] .bar {
    background: rgb(50,54,57);
    padding: 0px !important;
    margin: 0px
}
/* _content/WDOT_TAPWEB.SharedComponents/Template/Shared/QrCode.razor.rz.scp.css */
div.qr[b-1vhdsk9yvt]  .row {
    display: flex;
    flex-direction: row;
    flex-grow: 1;
    flex-shrink: 1;
    width: 100%;
}

div.qr[b-1vhdsk9yvt]  .one, div.qr[b-1vhdsk9yvt]  .zero {
    flex-grow: 1;
    flex-shrink: 1;
}

div.qr[b-1vhdsk9yvt]  .one {
    background: black;
}

div.qr[b-1vhdsk9yvt]  .zero {
    background: transparent;
}
