﻿/* PVG brand layer for Telerik controls (Bootstrap skin, lightweight rendering).
   Loaded by every app master page. Changes colors, type, corners and states only;
   sizes and layout stay the skin's own so existing screens keep their structure. */

.pv-app {
    font-family: "Public Sans", "Segoe UI", system-ui, sans-serif;
    color: #18233A;
    -webkit-font-smoothing: antialiased;
}

.pv-app [class*="RadGrid"],
.pv-app [class*="RadInput"],
.pv-app [class*="RadPicker"],
.pv-app [class*="RadComboBox"],
.pv-app [class*="RadDropDownList"],
.pv-app [class*="RadButton"],
.pv-app [class*="RadTabStrip"],
.pv-app [class*="RadPanelBar"],
.pv-app [class*="RadListBox"],
.pv-app [class*="RadWindow"],
.pv-app [class*="RadCalendar"],
.pv-app [class*="RadScheduler"],
.pv-app [class*="RadLabel"],
.pv-app [class*="RadSearchBox"],
.pv-app [class*="RadNotification"],
.pv-app [class*="RadToolBar"] {
    font-family: inherit;
}

.pv-app :focus-visible {
    outline: 3px solid #F39A1E;
    outline-offset: 2px;
}

/* ---------- Buttons ---------- */

.pv-app .RadButton.RadButton_Bootstrap,
.pv-app .RadButton_Bootstrap.rbButton {
    background: #001437;
    background-image: none;
    border-color: #001437;
    color: #fff;
    border-radius: 999px;
    font-weight: 600;
    box-shadow: none;
}
.pv-app .RadButton_Bootstrap.rbButton:hover,
.pv-app .RadButton.RadButton_Bootstrap:hover {
    background: #163570;
    border-color: #163570;
    color: #fff;
}
.pv-app .RadButton_Bootstrap.rbButton:focus,
.pv-app .RadButton_Bootstrap.rbButton.rbFocused {
    box-shadow: 0 0 0 3px rgba(243, 154, 30, .45);
}
.pv-app .RadButton_Bootstrap.rbPrimaryButton {
    background: #F39A1E;
    border-color: #F39A1E;
    color: #001437;
}
.pv-app .RadButton_Bootstrap.rbPrimaryButton:hover {
    background: #FFB04A;
    border-color: #FFB04A;
    color: #001437;
}
.pv-app .RadButton_Bootstrap.rbDisabled,
.pv-app .RadButton_Bootstrap.rbButton[disabled] {
    background: #DCE3EE;
    border-color: #DCE3EE;
    color: #5B6680;
}
/* Image-only buttons and link buttons keep their own look. */
.pv-app .RadButton_Bootstrap.rbImageButton,
.pv-app .RadButton_Bootstrap.rbLinkButton {
    background: transparent;
    border-color: transparent;
    color: inherit;
    border-radius: 8px;
}

/* ---------- Text inputs, pickers, dropdowns ---------- */

.pv-app .RadInput_Bootstrap .riTextBox,
.pv-app .RadPicker_Bootstrap .riTextBox,
.pv-app .RadComboBox_Bootstrap .rcbInner,
.pv-app .RadDropDownList_Bootstrap .rddlInner,
.pv-app .RadSearchBox_Bootstrap .rsbInner {
    border-color: #C9D2E0;
    border-radius: 8px;
    color: #18233A;
}
.pv-app .RadInput_Bootstrap .riTextBox.riHover,
.pv-app .RadComboBox_Bootstrap .rcbHovered .rcbInner,
.pv-app .RadDropDownList_Bootstrap .rddlHovered .rddlInner,
.pv-app .RadDropDownList_Bootstrap .rddlInner:hover {
    border-color: #8A97AE;
}
.pv-app .RadInput_Bootstrap .riTextBox.riFocused,
.pv-app .RadPicker_Bootstrap .riTextBox.riFocused,
.pv-app .RadComboBox_Bootstrap .rcbFocused .rcbInner,
.pv-app .RadDropDownList_Bootstrap .rddlFocused .rddlInner,
.pv-app .RadSearchBox_Bootstrap .rsbFocused .rsbInner {
    border-color: #001437;
    box-shadow: 0 0 0 3px rgba(243, 154, 30, .30);
}
.pv-app .RadInput_Bootstrap .riTextBox.riError {
    border-color: #C2410C;
}

/* Dropdown lists (rendered at the end of the page, so not inside .pv-app containers' children only) */
.rddlPopup_Bootstrap .rddlItemHovered,
.RadComboBoxDropDown_Bootstrap .rcbHovered {
    background: #EAF0F8;
    color: #001437;
}
.rddlPopup_Bootstrap .rddlItemSelected,
.RadComboBoxDropDown_Bootstrap .rcbItem.rcbSelected {
    background: #001437;
    color: #fff;
}

/* ---------- Grids ---------- */

.pv-app .RadGrid.RadGrid_Bootstrap {
    border-color: #DCE3EE;
    border-radius: 12px;
    max-width: 100%;
    overflow-x: auto;
}
.pv-app .RadGrid_Bootstrap .rgHeader,
.pv-app .RadGrid_Bootstrap th.rgResizeCol {
    background: #001437;
    background-image: none;
    color: #fff;
    border-color: #0B2453;
    font-weight: 600;
}
.pv-app .RadGrid_Bootstrap .rgHeader a,
.pv-app .RadGrid_Bootstrap .rgHeader .rgSortAsc,
.pv-app .RadGrid_Bootstrap .rgHeader .rgSortDesc {
    color: #fff;
}
.pv-app .RadGrid_Bootstrap .rgAltRow,
.pv-app .RadGrid_Bootstrap .rgAltRow > td {
    background: #F7F9FC;
}
.pv-app .RadGrid_Bootstrap .rgHoveredRow,
.pv-app .RadGrid_Bootstrap .rgRow:hover > td,
.pv-app .RadGrid_Bootstrap .rgAltRow:hover > td {
    background: #EEF3FA;
}
.pv-app .RadGrid_Bootstrap .rgSelectedRow,
.pv-app .RadGrid_Bootstrap .rgSelectedRow > td {
    background: #FFF1DD;
    color: #18233A;
}
.pv-app .RadGrid_Bootstrap .rgCommandRow,
.pv-app .RadGrid_Bootstrap .rgCommandCell,
.pv-app .RadGrid_Bootstrap .rgPager,
.pv-app .RadGrid_Bootstrap .rgFilterRow {
    background: #F4F7FB;
    border-color: #DCE3EE;
}
.pv-app .RadGrid_Bootstrap .rgPager .rgCurrentPage,
.pv-app .RadGrid_Bootstrap .rgNumPart a.rgCurrentPage {
    background: #001437 !important;
    border-color: #001437 !important;
    color: #fff !important;
}

/* ---------- Tabs, panel bars ---------- */

.pv-app .RadTabStrip_Bootstrap .rtsLink {
    color: #5B6680;
    border-radius: 8px 8px 0 0;
}
.pv-app .RadTabStrip_Bootstrap .rtsLink:hover {
    color: #001437;
}
.pv-app .RadTabStrip_Bootstrap .rtsSelected,
.pv-app .RadTabStrip_Bootstrap .rtsSelected:hover {
    color: #001437;
    border-bottom-color: #F39A1E;
    box-shadow: inset 0 -3px 0 #F39A1E;
}

.pv-app .RadPanelBar_Bootstrap .rpLink.rpSelected,
.pv-app .RadPanelBar_Bootstrap .rpLink.rpExpanded {
    background: #001437;
    color: #fff;
}

/* ---------- Pop-up windows and notifications ---------- */

.RadWindow_Bootstrap .rwTitleBar,
.RadWindow_Bootstrap.rwNormalWindow .rwTitleBar {
    background: #001437;
    background-image: none;
    color: #fff;
}
.RadWindow_Bootstrap .rwTitleBar .rwTitle,
.RadWindow_Bootstrap .rwTitleWrapper .rwTitle {
    color: #fff;
    font-weight: 700;
}
.RadWindow_Bootstrap .rwTitleBar .rwCommandButton {
    color: #fff;
}
.RadWindow_Bootstrap {
    border-radius: 12px;
    overflow: hidden;
}

/* ---------- Calendars and schedulers ---------- */

.RadCalendar_Bootstrap .rcSelected a,
.RadCalendar_Bootstrap .rcSelected span {
    background: #001437;
    border-color: #001437;
    color: #fff;
}
.RadCalendar_Bootstrap .rcToday a {
    box-shadow: inset 0 0 0 2px #F39A1E;
}
.pv-app .RadScheduler_Bootstrap .rsHeader,
.pv-app .RadScheduler_Bootstrap .rsHeader ul a.rsSelected {
    background-image: none;
}
.pv-app .RadScheduler_Bootstrap .rsHeader ul a.rsSelected {
    background: #001437;
    color: #fff;
}

/* ---------- Page canvas ---------- */

body.pv-app { background-color: #fff; }
.pv-app .watermarked:after { display: none; }

/* ---------- Module header: name + page tabs (module nested master pages) ---------- */

.pv-modhead {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px 32px;
    padding: 6px 0 18px;
    margin: 0 0 24px;
    border-bottom: 1px solid #DCE3EE;
}
.pv-modhead h1 {
    font-family: "Bricolage Grotesque", "Segoe UI", system-ui, sans-serif;
    font-weight: 800;
    font-size: clamp(1.6rem, 2.6vw, 2.1rem);
    letter-spacing: -0.02em;
    line-height: 1.1;
    color: #001437;
    margin: 0;
}
.pv-app .RadMenu.pv-modnav {
    width: auto !important;
    flex: 1 1 auto;
    font-size: 1rem !important;
    background: none !important;
    border: 0 !important;
    box-shadow: none !important;
}
.pv-app .pv-modnav .rmRootGroup {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    list-style: none;
    margin: 0 !important;
    padding: 0 !important;
    background: none !important;
    background-image: none !important;
    border: 0 !important;
    box-shadow: none !important;
}
.pv-app .pv-modnav .rmRootGroup > .rmItem {
    list-style: none;
    float: none !important;
    border: 0 !important;
    background: none !important;
    width: auto !important;
    margin: 0 !important;
}
.pv-app .pv-modnav .rmRootGroup > .rmItem > .rmLink {
    display: inline-flex !important;
    align-items: center;
    padding: 8px 16px !important;
    border-radius: 999px !important;
    border: 1px solid transparent !important;
    background: transparent !important;
    background-image: none !important;
    color: #18233A !important;
    font-family: "Public Sans", "Segoe UI", system-ui, sans-serif;
    font-size: 1rem !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
    text-decoration: none !important;
    box-shadow: none !important;
}
.pv-app .pv-modnav .rmRootGroup > .rmItem > .rmLink:hover {
    background: #F4F7FB !important;
    border-color: #DCE3EE !important;
    color: #001437 !important;
}
.pv-app .pv-modnav .rmRootGroup > .rmItem > .rmLink.pv-current,
.pv-app .pv-modnav .rmRootGroup > .rmItem.rmSelected > .rmLink {
    background: #001437 !important;
    border-color: #001437 !important;
    color: #fff !important;
}
.pv-app .pv-modnav .rmText { padding: 0 !important; color: inherit !important; }


/* Checkboxes, radio buttons and toggle buttons are built from buttons too: keep them plain. */
.pv-app .RadButton_Bootstrap.rbCheckBox,
.pv-app .RadButton_Bootstrap.rbRadioButton,
.pv-app .RadButton_Bootstrap.rbToggleButton,
.pv-app .RadCheckBox.RadButton_Bootstrap,
.pv-app .RadRadioButton.RadButton_Bootstrap,
.pv-app .RadCheckBox.RadButton_Bootstrap:hover,
.pv-app .RadRadioButton.RadButton_Bootstrap:hover {
    background: transparent !important;
    border-color: transparent !important;
    color: #18233A !important;
    box-shadow: none !important;
    border-radius: 6px;
    font-weight: 400;
}
.pv-app .RadCheckBox .rbToggleCheckboxChecked,
.pv-app .RadCheckBox .p-i-checkbox-checked,
.pv-app .RadRadioButton .rbToggleRadioChecked {
    color: #001437;
}

/* ---------- Module start screens: a heading and option cards (e.g. Intake/IntakeChoice) ---------- */

.pv-choice { max-width: 1040px; margin: 24px auto 64px; }
.pv-choice__head { text-align: center; margin-bottom: 32px; }
.pv-choice__logo { width: 260px; max-width: 70%; height: auto; margin-bottom: 20px; }
.pv-choice__head h1 {
    font-family: "Bricolage Grotesque", "Segoe UI", system-ui, sans-serif;
    font-weight: 800;
    font-size: clamp(1.9rem, 3.4vw, 2.6rem);
    letter-spacing: -0.02em;
    color: #001437;
    margin: 0;
}
.pv-choice__head h1 .RadLabel { font: inherit !important; color: inherit !important; }
.pv-choice__head p { margin: 10px 0 0; color: #5B6680; font-size: 1.1rem; }

.pv-notice {
    display: block;
    max-width: 760px;
    margin: 0 auto 28px;
    padding: 14px 18px;
    border-radius: 12px;
    background: #FFF6E8;
    border: 1px solid #F6D7A6;
    color: #5C3A06;
    font-size: 1rem;
    line-height: 1.5;
    text-align: left;
}
.pv-notice a { color: #001437; font-weight: 700; }

.pv-choice__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
}

.pv-app .RadButton.pv-choice__card,
.pv-app button.pv-choice__card,
.pv-app .pv-choice__card {
    display: grid !important;
    grid-template-columns: 72px 1fr;
    grid-template-rows: auto auto;
    column-gap: 20px;
    row-gap: 4px;
    align-items: start;
    text-align: left !important;
    width: 100% !important;
    height: auto !important;
    min-height: 132px;
    padding: 24px !important;
    background: #fff !important;
    background-image: none !important;
    border: 1px solid #DCE3EE !important;
    border-radius: 18px !important;
    box-shadow: none !important;
    color: #18233A !important;
    cursor: pointer;
    white-space: normal !important;
    font-weight: 400 !important;
    transition: border-color .15s ease, box-shadow .15s ease;
}
.pv-app .pv-choice__card:hover {
    border-color: #001437 !important;
    box-shadow: 0 0 0 3px rgba(243, 154, 30, .25) !important;
}
.pv-app .pv-choice__card .rbText { display: contents; }
.pv-choice__icon {
    grid-row: 1 / span 2;
    width: 72px; height: 72px;
    border-radius: 18px;
    background: #F4F7FB;
    display: grid; place-items: center;
}
.pv-choice__icon img { width: 44px; height: 44px; object-fit: contain; }
.pv-choice__title,
.pv-choice__title .RadLabel {
    font-family: "Bricolage Grotesque", "Segoe UI", system-ui, sans-serif !important;
    font-weight: 700 !important;
    font-size: 1.35rem !important;
    color: #001437 !important;
    line-height: 1.2;
    -webkit-text-fill-color: currentColor;
    -webkit-text-stroke: 0;
}
.pv-choice__desc { color: #5B6680; font-size: 1rem; line-height: 1.5; }

.pv-app .pv-choice__card.rbDisabled,
.pv-app .pv-choice__card[disabled] {
    cursor: default;
    opacity: .6;
    border-style: dashed !important;
    box-shadow: none !important;
}

@media (max-width: 720px) {
    .pv-choice__grid { grid-template-columns: 1fr; }
    .pv-app .pv-choice__card { grid-template-columns: 56px 1fr; padding: 18px !important; min-height: 0; }
    .pv-choice__icon { width: 56px; height: 56px; }
    .pv-choice__icon img { width: 34px; height: 34px; }
}

/* ---------- Plain-link module navigation (pages that use links instead of a menu control) ---------- */

.pv-subnav { display: flex; flex-wrap: wrap; gap: 6px; flex: 1 1 auto; }
.pv-app .pv-subnav a {
    display: inline-flex;
    align-items: center;
    padding: 8px 16px;
    border-radius: 999px;
    border: 1px solid transparent;
    color: #18233A !important;
    font-weight: 600;
    font-size: 1rem;
    line-height: 1.2;
    text-decoration: none !important;
    background: transparent;
}
.pv-app .pv-subnav a:hover { background: #F4F7FB; border-color: #DCE3EE; color: #001437 !important; }
.pv-app .pv-subnav a.pv-current { background: #001437; border-color: #001437; color: #fff !important; }

/* Tab icons: keep them icon-sized under the shared skin (the old Silk skin used to do this). */
.pv-app .RadTabStrip .rtsImg {
    width: auto !important;
    height: auto !important;
    max-height: 22px !important;
    max-width: 26px !important;
    vertical-align: middle;
    margin-right: 6px;
    object-fit: contain;
}
.pv-app .RadTabStrip .rtsLink { display: inline-flex; align-items: center; height: auto !important; min-height: 40px; }

/* Text boxes with a built-in label: label on the left, input fills the rest of the row. */
.pv-app .RadInput:has(> .riLabel) {
    display: inline-flex !important;
    align-items: center;
    gap: 8px;
}
.pv-app .RadInput > .riLabel { flex: 0 0 auto; margin: 0; }
.pv-app .RadInput:has(> .riLabel) > .riContentWrapper {
    flex: 1 1 auto;
    display: flex;
    min-width: 0;
}
.pv-app .RadInput:has(> .riLabel) > .riContentWrapper > .riTextBox {
    width: 100% !important;
    min-width: 60px;
}

/* Step wizards (e.g. Driving work orders) */
.pv-app .RadWizard_Bootstrap .rwzBreadCrumb .rwzSelected .rwzLink,
.pv-app .RadWizard_Bootstrap .rwzBreadCrumb .rwzSelected .rwzLink:before,
.pv-app .RadWizard_Bootstrap .rwzBreadCrumb .rwzSelected .rwzLink:after {
    background-color: #001437 !important;
    border-color: #001437 !important;
    color: #fff !important;
}
.pv-app .RadWizard_Bootstrap .rwzBreadCrumb .rwzSelected .rwzLink .rwzIndicator,
.pv-app .RadWizard_Bootstrap .rwzBreadCrumb .rwzSelected .rwzLink .rwzText { color: #fff !important; }
.pv-app .RadWizard_Bootstrap .rwzProgress { background-color: #F39A1E !important; }
.pv-app .RadWizard_Bootstrap .rwzNav .rwzButton.rwzNext,
.pv-app .RadWizard_Bootstrap .rwzNav .rwzButton.rwzFinish {
    background: #001437 !important; border-color: #001437 !important; color: #fff !important; border-radius: 999px;
}
.pv-app .RadWizard_Bootstrap .rwzNav .rwzButton { border-radius: 999px; }

/* Section titles inside module pages */
.pv-app h4.pv-section-title {
    font-family: "Bricolage Grotesque", "Segoe UI", system-ui, sans-serif;
    font-weight: 700;
    font-size: 1.35rem;
    color: #001437;
    letter-spacing: -0.01em;
    margin: 0 0 12px;
}

/* ---------- Legacy inline colors (BackColor / style="" in page markup) ----------
   Many pages set Bootstrap-era colors inline. These rules map them to the brand
   without touching markup, so every module picks up the same look. */

/* Section cards tinted green / blue / yellow / gray / teal / lilac */
.pv-app div[style*="#fff8e1" i],
.pv-app div[style*="#f2f2f2" i],
.pv-app div[style*="#e6f9f0" i],
.pv-app div[style*="#e9f7fe" i],
.pv-app div[style*="#e5e0ec" i],
.pv-app div[style*="#dbeef3" i],
.pv-app div[style*="#ebf1dd" i],
.pv-app div[style*="#e0f7fa" i],
.pv-app div[style*="#e9fdf7" i],
.pv-app div[style*="#f8f9fa" i],
.pv-app div[style*="#f9f9f9" i],
.pv-app div[style*="#f7f7f7" i] {
    background-color: #F7F9FC !important;
    border: 1px solid #DCE3EE !important;
    border-radius: 12px !important;
}
.pv-app div[style*="#f2f2f2" i] { background-color: #fff !important; }

/* Colored section headings: one navy heading style */
.pv-app h4[style*="color" i],
.pv-app h5[style*="color" i] {
    color: #001437 !important;
    font-family: "Bricolage Grotesque", "Segoe UI", system-ui, sans-serif;
    font-weight: 700;
    letter-spacing: -0.01em;
}

/* Inline error boxes */
.pv-app div[style*="#f8d7da" i] {
    background-color: #FDF0EC !important;
    border: 1px solid #F4C7B8 !important;
    border-left: 4px solid #C2410C !important;
    border-radius: 10px !important;
}
.pv-app span[style*="color:Red" i] { color: #B42318 !important; }

/* Buttons with an inline BackColor */
.pv-app .RadButton_Bootstrap.rbButton[style*="background-color:Green" i],
.pv-app .RadButton_Bootstrap.rbButton[style*="background-color:DarkGreen" i],
.pv-app .RadButton_Bootstrap.rbButton[style*="background-color:Navy" i],
.pv-app .RadButton_Bootstrap.rbButton[style*="background-color:Blue" i],
.pv-app .RadButton_Bootstrap.rbButton[style*="background-color:#007BFF" i],
.pv-app .RadButton_Bootstrap.rbButton[style*="background-color:#2a7de1" i],
.pv-app .RadButton_Bootstrap.rbButton[style*="background-color:#7b95c6" i],
.pv-app .RadButton_Bootstrap.rbButton[style*="background-color:#357a2b" i],
.pv-app .RadButton_Bootstrap.rbButton[style*="background-color:#003c9f" i],
.pv-app .RadButton_Bootstrap.rbButton[style*="background-color:#28a745" i] {
    background-color: #001437 !important;
    border-color: #001437 !important;
    color: #fff !important;
}
.pv-app .RadButton_Bootstrap.rbButton[style*="background-color:Green" i]:hover,
.pv-app .RadButton_Bootstrap.rbButton[style*="background-color:DarkGreen" i]:hover,
.pv-app .RadButton_Bootstrap.rbButton[style*="background-color:Navy" i]:hover,
.pv-app .RadButton_Bootstrap.rbButton[style*="background-color:#007BFF" i]:hover,
.pv-app .RadButton_Bootstrap.rbButton[style*="background-color:#2a7de1" i]:hover {
    background-color: #163570 !important;
    border-color: #163570 !important;
}
.pv-app .RadButton_Bootstrap.rbButton[style*="background-color:gray" i],
.pv-app .RadButton_Bootstrap.rbButton[style*="background-color:lightGray" i] {
    background-color: #fff !important;
    border: 1px solid #001437 !important;
    color: #001437 !important;
}
.pv-app .RadButton_Bootstrap.rbButton[style*="background-color:Red" i],
.pv-app .RadButton_Bootstrap.rbButton[style*="background-color:DarkRed" i],
.pv-app .RadButton_Bootstrap.rbButton[style*="background-color:Salmon" i],
.pv-app .RadButton_Bootstrap.rbButton[style*="background-color:#dc3545" i] {
    background-color: #B42318 !important;
    border-color: #B42318 !important;
    color: #fff !important;
}
.pv-app .RadButton_Bootstrap.rbButton[style*="background-color:#ff9933" i],
.pv-app .RadButton_Bootstrap.rbButton[style*="background-color:Fuchsia" i] {
    background-color: #F39A1E !important;
    border-color: #F39A1E !important;
    color: #001437 !important;
}

/* Outline buttons: inline text + border color, no fill */
.pv-app .RadButton_Bootstrap.rbButton[style*="border-color" i]:not([style*="background-color" i]) {
    background: #fff !important;
    border-color: #001437 !important;
    color: #001437 !important;
}
.pv-app .RadButton_Bootstrap.rbButton[style*="border-color" i]:not([style*="background-color" i]):hover {
    background: #F4F7FB !important;
}
.pv-app .RadButton_Bootstrap.rbButton[style*="color:Red" i]:not([style*="background-color" i]),
.pv-app .RadButton_Bootstrap.rbButton[style*="color:DarkRed" i]:not([style*="background-color" i]) {
    border-color: #B42318 !important;
    color: #B42318 !important;
}

/* Labels colored blue / navy / dark blue: brand navy */
.pv-app .RadLabel[style*="color:DarkBlue" i],
.pv-app .RadLabel[style*="color:Navy" i],
.pv-app .RadLabel[style*="color:Blue" i],
.pv-app .RadLabel[style*="color:#007bff" i],
.pv-app .RadLabel[style*="color:DarkGreen" i] {
    color: #001437 !important;
}
.pv-app .RadLabel[style*="font-size:X-Large" i],
.pv-app .RadLabel[style*="font-size:XX-Large" i],
.pv-app .RadLabel[style*="font-size:Large" i][style*="bold" i] {
    font-family: "Bricolage Grotesque", "Segoe UI", system-ui, sans-serif;
    letter-spacing: -0.01em;
}

/* Tab text: the Bootstrap skin's blue wins without !important */
.pv-app .RadTabStrip_Bootstrap .rtsLink { color: #5B6680 !important; }
.pv-app .RadTabStrip_Bootstrap .rtsLink:hover,
.pv-app .RadTabStrip_Bootstrap .rtsSelected,
.pv-app .RadTabStrip_Bootstrap .rtsSelected .rtsTxt { color: #001437 !important; font-weight: 600; }

/* ---------- Page-level <style> blocks ----------
   About 100 pages restyle <body> (padding, azure/grey backgrounds, Segoe UI).
   The app shell owns the page edges, so these settings are neutralised here. */
body.pv-app {
    padding: 0 !important;
    margin: 0 !important;
    height: auto !important;
    font-family: "Public Sans", "Segoe UI", system-ui, sans-serif !important;
    color: #18233A;
}
.pv-app .content-wrapper { padding-top: 0 !important; }

/* Cards used on several module pages (Tools, Materials, Equipment) */
.pv-app .section-card {
    border: 1px solid #DCE3EE;
    border-radius: 14px !important;
    box-shadow: 0 1px 2px rgba(0, 20, 55, .05) !important;
}
.pv-app .section-header { flex-wrap: wrap; gap: 8px; }
.pv-app .section-header h2 {
    font-family: "Bricolage Grotesque", "Segoe UI", system-ui, sans-serif;
    font-weight: 700;
    font-size: 1.2rem !important;
    color: #001437 !important;
    margin: 0;
}
.pv-app .RadButton.telerik-btn {
    background: #001437 !important;
    border-color: #001437 !important;
    border-radius: 999px !important;
    color: #fff !important;
}
.pv-app .link-item a, .pv-app .link-container a { color: #0B2453 !important; font-weight: 600; }
@media (max-width: 1199px) {
    .pv-app .row > .col-md-3:has(> .section-card) { flex: 0 0 50%; max-width: 50%; }
    .pv-app .row > .col-md-6:has(> .section-card) { flex: 0 0 100%; max-width: 100%; }
}
@media (max-width: 575px) {
    .pv-app .row > .col-md-3:has(> .section-card) { flex: 0 0 100%; max-width: 100%; }
}

/* Grid status cells colored in code-behind (cell.BackColor): show as a dot + label */
.pv-app .RadGrid td[style*="background-color:Green" i],
.pv-app .RadGrid td[style*="background-color:DarkGreen" i],
.pv-app .RadGrid td[style*="background-color:LimeGreen" i],
.pv-app .RadGrid td[style*="background-color:Red" i],
.pv-app .RadGrid td[style*="background-color:DarkRed" i],
.pv-app .RadGrid td[style*="background-color:Orange" i],
.pv-app .RadGrid td[style*="background-color:Gray" i] {
    background-color: transparent !important;
    font-weight: 600;
    white-space: nowrap;
}
.pv-app .RadGrid td[style*="background-color:Green" i],
.pv-app .RadGrid td[style*="background-color:DarkGreen" i],
.pv-app .RadGrid td[style*="background-color:LimeGreen" i] { color: #157F3C !important; }
.pv-app .RadGrid td[style*="background-color:Red" i],
.pv-app .RadGrid td[style*="background-color:DarkRed" i] { color: #B42318 !important; }
.pv-app .RadGrid td[style*="background-color:Orange" i] { color: #B45309 !important; }
.pv-app .RadGrid td[style*="background-color:Gray" i] { color: #5B6680 !important; }
.pv-app .RadGrid td[style*="background-color:Green" i]::before,
.pv-app .RadGrid td[style*="background-color:DarkGreen" i]::before,
.pv-app .RadGrid td[style*="background-color:LimeGreen" i]::before,
.pv-app .RadGrid td[style*="background-color:Red" i]::before,
.pv-app .RadGrid td[style*="background-color:DarkRed" i]::before,
.pv-app .RadGrid td[style*="background-color:Orange" i]::before,
.pv-app .RadGrid td[style*="background-color:Gray" i]::before {
    content: "";
    display: inline-block;
    width: 8px; height: 8px;
    border-radius: 50%;
    background: currentColor;
    margin-right: 8px;
    vertical-align: 1px;
}

/* Delete / remove buttons (found by control ID): red outline instead of solid navy */
.pv-app .RadButton_Bootstrap.rbButton[id*="Delete" i],
.pv-app .RadButton_Bootstrap.rbButton[id*="Remove" i],
.pv-app .RadButton_Bootstrap.rbButton[id$="Del" i] {
    background: #fff !important;
    border: 1px solid #E4B4AE !important;
    color: #B42318 !important;
}
.pv-app .RadButton_Bootstrap.rbButton[id*="Delete" i]:hover,
.pv-app .RadButton_Bootstrap.rbButton[id*="Remove" i]:hover,
.pv-app .RadButton_Bootstrap.rbButton[id$="Del" i]:hover {
    background: #FDF0EC !important;
    border-color: #B42318 !important;
}

/* Buttons inside grid rows: compact */
.pv-app .RadGrid .rgRow .RadButton_Bootstrap.rbButton,
.pv-app .RadGrid .rgAltRow .RadButton_Bootstrap.rbButton {
    font-size: .85rem;
    padding-top: 4px;
    padding-bottom: 4px;
    min-height: 0;
}

/* Hand-sized headings in labels: underlined / xx-large */
.pv-app .RadLabel[style*="underline" i] {
    text-decoration: none !important;
    font-family: "Bricolage Grotesque", "Segoe UI", system-ui, sans-serif;
    font-weight: 700;
    color: #001437;
    font-size: 1.3rem !important;
}
.pv-app .RadLabel[style*="xx-large" i] {
    font-family: "Bricolage Grotesque", "Segoe UI", system-ui, sans-serif;
    font-size: 1.5rem !important;
    letter-spacing: -0.01em;
}

/* Chart columns: fixed-width RadHtmlCharts need a full row below 1200px */
@media (max-width: 1199px) {
    .pv-app .row > [class*="col-"]:has(> .RadHtmlChart) { flex: 0 0 100%; max-width: 100%; }
}
.pv-app .RadHtmlChart { max-width: 100%; overflow: hidden; }

/* Images that still point at the retired flaticon CDN render as broken icons */
.pv-app img[src*="image.flaticon.com"] { display: none !important; }

/* Scheduler view switcher (lightweight rendering) */
.pv-app .RadScheduler_Bootstrap .rsToolbar .rsSelected .rsButton {
    background: #001437 !important;
    border-color: #001437 !important;
    color: #fff !important;
}
.pv-app .RadScheduler_Bootstrap .rsToday { box-shadow: inset 0 0 0 2px #F39A1E; }

/* Module header built from a RadTabStrip (Manager pages): same pills as .pv-modnav */
.pv-app .pv-modhead .RadTabStrip { flex: 1 1 auto; }
.pv-app .pv-modhead .RadTabStrip .rtsLevel1,
.pv-app .pv-modhead .RadTabStrip .rtsUL { display: flex; flex-wrap: wrap; gap: 6px; border: 0 !important; background: none !important; }
.pv-app .pv-modhead .RadTabStrip .rtsLI { border: 0 !important; background: none !important; }
.pv-app .pv-modhead .RadTabStrip .rtsLink {
    padding: 8px 16px !important;
    border-radius: 999px !important;
    border: 1px solid transparent !important;
    background: transparent !important;
    color: #18233A !important;
    font-weight: 600;
    box-shadow: none !important;
}
.pv-app .pv-modhead .RadTabStrip .rtsLink:hover { background: #F4F7FB !important; border-color: #DCE3EE !important; }
.pv-app .pv-modhead .RadTabStrip .rtsSelected,
.pv-app .pv-modhead .RadTabStrip .rtsSelected .rtsTxt {
    background: #001437 !important;
    border-color: #001437 !important;
    color: #fff !important;
    box-shadow: none !important;
}
.pv-app .pv-modhead .RadTabStrip .rtsSelected { border-radius: 999px !important; }

/* ---------- Page helpers used by reworked pages ---------- */
.pv-modhead__sub { font-family: "Public Sans", system-ui, sans-serif; font-weight: 600; font-size: 1rem; color: #5B6680; margin-left: 10px; letter-spacing: 0; }
.pv-toolbar { display: flex; flex-wrap: wrap; gap: 8px; margin-left: auto; }
.pv-app .RadButton_Bootstrap.rbButton.pv-btn-line {
    background: #fff !important; border: 1px solid #001437 !important; color: #001437 !important;
}
.pv-app .RadButton_Bootstrap.rbButton.pv-btn-line:hover { background: #F4F7FB !important; }
.pv-app .RadButton_Bootstrap.rbButton.pv-btn-link {
    background: transparent !important; border-color: transparent !important; color: #0B2453 !important;
    text-decoration: underline; text-underline-offset: 3px; padding-left: 6px; padding-right: 6px;
}
.pv-panel {
    background: #F7F9FC; border: 1px solid #DCE3EE; border-radius: 14px;
    padding: 18px 20px; margin-bottom: 24px; display: grid; gap: 16px;
}
.pv-panel__row { display: flex; flex-wrap: wrap; align-items: flex-end; gap: 16px 28px; }
.pv-field-inline { display: flex; flex-direction: column; gap: 6px; min-width: 200px; }
.pv-field-inline--grow { flex: 1 1 320px; }
.pv-field-inline > div:not(.pv-field-inline__label) { display: flex; }
.pv-field-inline__label { font-size: .85rem; font-weight: 600; color: #5B6680; }
.pv-preview:empty { display: none; }
.pv-preview .pv-preview__subject { display: block; font-weight: 700; color: #001437; margin-bottom: 6px; }
.pv-preview .pv-preview__body { display: block; color: #18233A; }
.pv-inline { display: flex; flex-wrap: wrap; gap: 4px; align-items: center; }

/* Grid headers with HeaderStyle BackColor set in markup */
.pv-app .RadGrid .rgHeader[style*="background-color" i],
.pv-app .RadGrid .rgHeader[style*="background-color" i] a {
    background-color: #001437 !important;
    color: #fff !important;
    border-color: #0B2453 !important;
}

/* Plain textareas and inputs on hand-built pages */
.pv-app textarea,
.pv-app .riTextBox.riMultiLine { border: 1px solid #C9D2E0 !important; border-radius: 10px !important; }
.pv-app textarea:focus { border-color: #001437 !important; box-shadow: 0 0 0 3px rgba(243, 154, 30, .30) !important; outline: none; }

/* Plain page headings */
.pv-app h2, .pv-app h3, .pv-app .h2, .pv-app .h3 {
    font-family: "Bricolage Grotesque", "Segoe UI", system-ui, sans-serif;
    font-weight: 700;
    letter-spacing: -0.01em;
    color: #001437;
}

/* ======================================================================
   Intake module (Add documents / Search / Shared)
   ====================================================================== */
.pv-pagehead { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 12px 24px; margin: 4px 0 20px; }
.pv-pagehead h2 { margin: 0; font-size: 1.5rem; }
.pv-pagehead p { margin: 4px 0 0; color: #5B6680; }
.pv-muted { color: #5B6680; font-size: .9rem; }

/* Add documents: viewer + workflow side panel */
.pv-intake { display: grid; grid-template-columns: minmax(0, 1fr) 380px; gap: 24px; align-items: start; }
@media (max-width: 1100px) { .pv-intake { grid-template-columns: 1fr; } }
.pv-intake__viewer {
    border: 1px solid #DCE3EE; border-radius: 14px; overflow: hidden; background: #F4F7FB; min-height: 600px;
}
.pv-intake__viewer .RadPdfViewer { border: 0 !important; }
.pv-intake__panel {
    position: sticky; top: 16px;
    border: 1px solid #DCE3EE; border-radius: 14px; background: #fff;
    box-shadow: 0 1px 2px rgba(0, 20, 55, .05), 0 8px 24px rgba(0, 20, 55, .06);
    padding: 20px; display: grid; gap: 16px;
}
.pv-intake__panel h2 { margin: 0; font-size: 1.25rem; }
.pv-intake__panel .row { margin-left: 0; margin-right: 0; }
.pv-intake__panel .row > [class*="col-"] { flex: 0 0 100%; max-width: 100%; padding-left: 0; padding-right: 0; }
.pv-intake__panel .row.pv-pair { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.pv-intake__panel .row + .row { margin-top: 12px; }
.pv-intake__panel .RadLabel:not(.pv-muted) { font-weight: 600; font-size: .88rem; color: #18233A; display: inline-block; margin-bottom: 4px; }
.pv-intake__panel .RadDropDownList,
.pv-intake__panel .RadComboBox,
.pv-intake__panel .RadInput,
.pv-intake__panel .RadSearchBox,
.pv-intake__panel .RadPicker { width: 100% !important; }
.pv-intake__panel .rbButton { width: 100%; justify-content: center; }
.pv-intake__panel .rbButton + .rbButton, .pv-intake__panel .row .rbButton { margin-top: 8px; }
.pv-intake__panel .button-content { display: inline-flex; align-items: center; gap: 8px; }
.pv-intake__panel .button-content img { width: 18px; height: 18px; filter: brightness(0) invert(1); }
.pv-intake__panel .rmpView, .pv-intake__panel .RadMultiPage > div { border: 0 !important; box-shadow: none !important; padding: 0 !important; background: none !important; }
.pv-intake .card { border: 0; box-shadow: none; padding: 0; background: none; }

/* Step tabs (Source / Label / Details / Create) - revised 2026-10-08: larger, whole tab highlights */
.pv-app .pv-steps.RadTabStrip { margin: 4px 0 2px; }
.pv-app .pv-steps.RadTabStrip .rtsLevel, .pv-app .pv-steps.RadTabStrip .rtsLevel1 { border: 0 !important; background: none !important; }
.pv-app .pv-steps.RadTabStrip .rtsUL {
    display: grid !important; grid-template-columns: repeat(4, 1fr); gap: 6px; margin: 0 !important;
    padding: 6px !important; background: #EEF2F8 !important; border-radius: 14px; border: 0 !important; counter-reset: step;
}
.pv-app .pv-steps.RadTabStrip .rtsLI { border: 0 !important; background: none !important; counter-increment: step; margin: 0 !important; float: none !important; }
.pv-app .pv-steps.RadTabStrip .rtsLI::before, .pv-app .pv-steps.RadTabStrip .rtsLI::after,
.pv-app .pv-steps.RadTabStrip .rtsLink::after { display: none !important; content: none !important; }
.pv-app .pv-steps.RadTabStrip .rtsLink {
    display: flex !important; flex-direction: column; align-items: center; justify-content: center; gap: 6px;
    min-height: 66px; padding: 10px 4px !important; border: 1px solid transparent !important; border-radius: 10px !important;
    background: transparent !important; box-shadow: none !important; color: #5B6680 !important;
    font-size: .86rem; font-weight: 700; line-height: 1.1; cursor: pointer; transition: background .15s, color .15s, box-shadow .15s;
}
.pv-app .pv-steps.RadTabStrip .rtsTxt { background: none !important; color: inherit !important; padding: 0 !important; }
.pv-app .pv-steps.RadTabStrip .rtsLink::before {
    content: counter(step); width: 28px; height: 28px; border-radius: 50%;
    display: grid; place-items: center; font-size: .82rem; font-weight: 800;
    background: #fff; color: #001437; border: 2px solid #C9D2E0;
}
.pv-app .pv-steps.RadTabStrip .rtsLink:hover { background: #fff !important; color: #001437 !important; }
.pv-app .pv-steps.RadTabStrip .rtsSelected .rtsLink,
.pv-app .pv-steps.RadTabStrip .rtsLink.rtsSelected {
    background: #001437 !important; color: #fff !important; border-color: #001437 !important;
    box-shadow: 0 4px 12px rgba(0, 20, 55, .25) !important;
}
.pv-app .pv-steps.RadTabStrip .rtsSelected .rtsLink::before,
.pv-app .pv-steps.RadTabStrip .rtsLink.rtsSelected::before { background: #F39A1E; border-color: #F39A1E; color: #001437; }
.pv-app .pv-steps.RadTabStrip .rtsImg { display: none !important; }

/* Source picker (Email / HHA Exchange / Upload / Settings) - revised 2026-10-08: 2x2 buttons */
.pv-app .pv-segment.RadTabStrip { margin: 0 0 14px; }
.pv-app .pv-segment.RadTabStrip .rtsLevel, .pv-app .pv-segment.RadTabStrip .rtsLevel1 { border: 0 !important; background: none !important; }
.pv-app .pv-segment.RadTabStrip .rtsUL {
    display: grid !important; grid-template-columns: 1fr 1fr; gap: 8px; margin: 0 !important; padding: 0 !important;
    border: 0 !important; background: none !important;
}
.pv-app .pv-segment.RadTabStrip .rtsLI { border: 0 !important; background: none !important; margin: 0 !important; float: none !important; }
.pv-app .pv-segment.RadTabStrip .rtsLI::before, .pv-app .pv-segment.RadTabStrip .rtsLI::after,
.pv-app .pv-segment.RadTabStrip .rtsLink::before, .pv-app .pv-segment.RadTabStrip .rtsLink::after { display: none !important; content: none !important; }
.pv-app .pv-segment.RadTabStrip .rtsLink {
    display: flex !important; align-items: center; justify-content: center; gap: 8px;
    min-height: 46px; padding: 10px 12px !important; border: 1.5px solid #DCE3EE !important; border-radius: 10px !important;
    background: #fff !important; color: #18233A !important; font-size: .9rem; font-weight: 600;
    box-shadow: 0 1px 2px rgba(0, 20, 55, .04) !important; cursor: pointer; transition: border-color .15s, background .15s, color .15s;
}
.pv-app .pv-segment.RadTabStrip .rtsTxt { background: none !important; color: inherit !important; padding: 0 !important; }
.pv-app .pv-segment.RadTabStrip .rtsLink:hover { border-color: #001437 !important; background: #F7F9FC !important; }
.pv-app .pv-segment.RadTabStrip .rtsSelected .rtsLink,
.pv-app .pv-segment.RadTabStrip .rtsLink.rtsSelected {
    background: #001437 !important; border-color: #001437 !important; color: #fff !important;
    box-shadow: inset 0 -3px 0 #F39A1E, 0 4px 12px rgba(0, 20, 55, .18) !important;
}
.pv-app .pv-segment.RadTabStrip .rtsImg { display: none !important; }

/* A little more room in the panel */
.pv-intake { grid-template-columns: minmax(0, 1fr) 420px; }
@media (max-width: 1100px) { .pv-intake { grid-template-columns: 1fr; } }
.pv-intake__panel { padding: 24px; gap: 20px; }
.pv-intake__panel .card { display: grid; gap: 16px; }
.pv-intake__panel .RadMultiPage .row + .row { margin-top: 14px; }
.pv-intake__panel .RadAsyncUpload .ruFileWrap { display: flex; gap: 8px; }
.pv-intake__panel .RadAsyncUpload .ruFakeInput { flex: 1; height: 42px; border-radius: 10px; }
.pv-intake__panel .RadAsyncUpload .ruButton { height: 42px; border-radius: 10px; padding: 0 18px; }

/* Recently added list */
.pv-recent h3 { font-size: .95rem; margin: 4px 0 8px; }
.pv-recent .RadGrid { border-radius: 10px !important; }
.pv-recent .RadGrid td { padding: 8px 10px !important; font-size: .86rem; }
.pv-savepath { margin-top: 16px; color: #5B6680; font-size: .82rem; word-break: break-all; }
.pv-savepath .RadLabel { color: #18233A; }

/* Search documents */
.pv-search { display: grid; gap: 16px; }
.pv-searchbar { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; padding: 16px; background: #F7F9FC; border: 1px solid #DCE3EE; border-radius: 14px; }
.pv-searchbar .RadSearchBox { flex: 1 1 320px; width: auto !important; }
.pv-searchbar .RadSearchBox .rsbInner { height: 46px; border-radius: 999px !important; padding-left: 16px; background: #fff; }
.pv-searchbar .RadSearchBox .rsbInput { font-size: 1.02rem; height: 44px; }
.pv-filters { display: flex; flex-wrap: wrap; gap: 16px; align-items: flex-end; padding: 16px; border: 1px dashed #C9D2E0; border-radius: 14px; }
.pv-filters .pv-field-inline { min-width: 240px; }
.pv-resultsbar { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.pv-resultsbar .RadLabel { font-weight: 600; color: #001437; }
.pv-actions { display: inline-flex; gap: 2px; }
.pv-iconbtn { display: inline-grid; place-items: center; width: 32px; height: 32px; border-radius: 8px; color: #001437; text-decoration: none !important; }
.pv-iconbtn:hover { background: #EEF3FA; }
.pv-iconbtn svg { width: 18px; height: 18px; }
.pv-iconbtn--hx { font: 700 .72rem/1 "Public Sans", sans-serif; color: #B42318; letter-spacing: .02em; }
.pv-iconbtn--danger { color: #B42318; }
.pv-iconbtn--danger:hover { background: #FDF0EC; }

/* Shared documents */
.pv-empty { text-align: center; padding: 40px 16px; color: #5B6680; }
