@import url('https://fonts.googleapis.com/css2?family=Roboto&display=swap');

table {
    border-collapse: collapse;
}

img {
    max-width: 100%;
}

body, html {
    margin: 0;
    padding: 0;
    background: #fff;
    color: #333;
    font-family: Roboto, sans-serif;
    height: 100%;
}

#app {
    height: 100%;
}

main {
    height: 100%;
    display: flex;
    flex-direction: column;
}

nav {
    background-color: #012b5d;
    padding: 12px 5%;
}

.kctda nav {
    background: #E31837;
}

nav a {
    color: #fff;
    padding: 0 8px;
    text-decoration: none;
}

nav a:hover {
    text-decoration: underline;
}

nav ul {
    margin: 0;
    padding: 0;
    text-align: right;
    display: inline-block;
    float: right;
}

nav li {
    display: inline-block;
}

label {
    display: block;
    margin-bottom: 8px;
}

fieldset {
    margin-bottom: 8px;
}

fieldset legend {
    font-size: 14px;
}

label .label {
    display: block;
    margin-bottom: 4px;
    font-size: 14px;
    color: var(--brand-accent-color);
    padding-right: 1.5ch;
}

label input, label textarea, div input, div textarea {
    padding: 12px 16px;
    box-sizing: border-box;
    background: #ddd;
    width: 100%;
    box-shadow: none;
}

label input[readonly] {
    color: #666;
}

label input[type=checkbox], div input[type=checkbox] {
    width: auto;
}

label input[type=color], div input[type=color] {
    min-height: 12px;
    background: none;
    padding: 0;
}

.submitted label textarea:invalid,
.submitted label input:invalid {
    box-shadow: 0 0 3px red;
}

.select-wrap {
    display: block;
    position: relative;
    background: #ddd;
}

.select-wrap select {
    border: 0;
    font-size: 16px;
    color: #000;
    background: #ddd;
    padding: 12px 28px 12px 12px;
    width: 100%;
    box-sizing: border-box;
    -moz-appearance: none;
    -webkit-appearance: none;
}

.select-wrap select::-ms-expand {
    display: none;
}

.select-wrap::after {
    font-size: 20px;
    font-weight: bold;
    content: '⌄';
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 12px;
    margin-top: -4px;
    color: #000;
    pointer-events: none;
}

.btn {
    border: 0;
    padding: 0.75rem 1.5rem;
    background: #012b5d;
    font-size: 13.333px;
    font-weight: 800;
    cursor: pointer;
    color: #fff;
    text-decoration: none;
}

.btn svg {
    vertical-align: middle;
}

.sm-btn {
    padding: 8px;
}

.sidebar {
    display: flex;
    flex-direction: column;
    padding-top: 12px;
    background: #f0f0f0;
    top: 0;
    bottom: 0;
    width: 25%;
    box-sizing: border-box;
    max-width: 300px;
}

.switch-dealer {
    padding: 6px 2ch;
    margin-top: auto;
}

.outer {
    flex-grow: 1;
    display: flex;
}

.inner {
    overflow: auto;
    height: calc( 100vh - 56px);
    width: 100%;
    box-sizing: border-box;
    padding: 12px 3%;
}

.menu-items {
    display: flex;
    flex-direction: column;
    flex-grow: 1;
}

#side_menu {
    margin: 0;
    padding: 12px 0 0 0;
    list-style: none;
}

#side_menu a {
    padding: 6px 2ch;
    display: block;
    text-decoration: none;
    border-top: 1px solid #333;
    color: #012b5d;
}

#side_menu li:last-child {
    border-bottom: 1px solid #333;
}

#side_menu a:hover {
    background: #cee2ff;
}

#budget_menu {
    margin: 0;
    padding: 12px 0 0 0;
    list-style: none;
    background: #ccc;
}

#budget_menu li {
    padding: 4px 2ch;
    font-size: 14px;
    border-bottom: 1px solid #666;
    display: flex;
    justify-content: space-between;
}

.table {
    border-collapse: collapse;
    width: 100%;
}

.table th {
    text-align: left;
    padding: 8px 24px;
    color: var(--brand-accent-color);
    background: #eee;
    border-bottom: 1px solid #666;
    font-size: 14px;
}

.table td {
    padding: 8px 24px;
    border-bottom: 1px solid #666;
    background: #fff;
    font-size: 12px;
}

.click-table tr.tbody:hover {
    cursor: pointer;
}

label[for="filter-by-dealer"] {
    vertical-align: top;
}

.radio .label, .check .label {
    display: inline-block;
    color: #000;
}

label input[type=radio], label input[type=checkbox] {
    width: auto;
}

.msg {
    text-align: center;
    border: 1px solid #000;
    border-radius: 5px;
    padding: 6px 3%;
    margin: 12px 2%;
}

.msg.success {
    border-color: #28a745;
    color: #28a745;
}

.msg.error {
    color: #721c24;
    background-color: #f8d7da;
    border-color: #f5c6cb;
}

.autocomplete {
    width: 100%;
    height: 2.9em !important;
}

.autocomplete-input input {
    padding: 12px 16px;
}

.autocomplete-list {
    padding-bottom: 0 !important;
    box-shadow: 2px 2px 3px rgba(0,0,0,0.5);
}

.dropdown-footer {
    padding: 5px 15px;
    border-top: 1px solid #ccc;
    background: #eee;
}

ul.aligned {
    margin-left: 1em;
    padding-left: 0;
}

#mobile-menu {
    display: none;
}

.flex { 
    display: flex;
}

.filters {
    display: flex;
    padding-bottom: 12px;
}

.filters label {
    display: inline-block;
}

.filters label.stacked {
    display: block;
}

.filters .select-wrap {
    display: inline-block;
    margin-right: 2ch;
}

@media  (max-width: 1100px) {
    #menu-main-nav {
        font-size: 12px;
    }
}

@media  (max-width: 960px) {
    #menu-main-nav {
        display: none;
    }

    .sidebar {
        position: fixed;
        top: 55px;
        bottom: 0;
        left: -100vw;
        width: 75%;
        max-width: 300px;
        transition: left 0.3s ease-in-out;
        z-index: 3;
    }

    .inner {
        position: relative;
    }

    #mobile-menu {
        display: inline-block;
        color: #fff;
        background: none;
        border: none;
        font-size: 32px;
        line-height: 16px;
        float: right;
        cursor: pointer;
    }

    .mobileMenuOpen .sidebar {
        left: 0;
    }

    .inner:before {
        content: '';
        position: fixed;
        top: 55px;
        left: 100vw;
        right: 200vw;
        bottom: 0;
        background-color: rgba(0,0,0,0);
        transition: background-color 0.3s ease-in-out;
        z-index: 2;
    }

    .mobileMenuOpen .inner:before {
        left: 0;
        right: 0;
        background-color: rgba(0,0,0,0.5)
    }
}

@media (max-width: 600px) {
    .radio span.label {
        display: inline;
    }
    
}

.sortable {
    cursor: pointer;
}

.sortable:after {
    content: '▲▼';
    font-size: 6px;
    width: 6px;
    margin-left: 0.75em;
    display: inline-block;
    vertical-align: top;
    margin-top: 2px;
    opacity: 0.25;
    word-wrap: anywhere;
    transition: opacity 0.3s ease-in-out;
    line-height: 1;
}

.sortable:hover:after {
    opacity: 0.8;
}

.sortable.desc:after {
    content: '▼';
    font-size: 10px;
    margin-left: 0.75em;
    display: inline-block;
    vertical-align: top;
    margin-top: 2px;
    opacity: 1;
}

.sortable.asc:after {
    content: '▲';
    font-size: 10px;
    margin-left: 0.75em;
    display: inline-block;
    vertical-align: top;
    margin-top: 2px;
    opacity: 1;
}

.budgetSummary {
    position: fixed;
    left: 0;
    bottom: 0px;
    background-color: #efefef;
    width: 19.7%;
    max-width: 300px;
}

.budgetSummary ul {
    list-style: none;
}

.budgetSummary #budget_menu li {
    font-size: 12px;
}

.login {
    flex-grow: 1;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
}

.login form {
    background: #eee;
    box-shadow: 0 0 3px rgba(0,0,0,0.3);
    border-radius: 5px;
    max-width: 500px;
    box-sizing: border-box;
    padding: 24px 5%;
}.forgot.svelte-k6cdal.svelte-k6cdal{text-align:center;font-size:0.8em}.forgot.svelte-k6cdal a.svelte-k6cdal{color:var(--brand-accent-color)}.back.svelte-g04brx.svelte-g04brx{text-align:center;font-size:0.8em}.back.svelte-g04brx a.svelte-g04brx{color:var(--brand-accent-color)}.back.svelte-g04brx.svelte-g04brx{text-align:center;font-size:0.8em}.back.svelte-g04brx a.svelte-g04brx{color:var(--brand-accent-color)}.autocomplete.svelte-75ckfb.svelte-75ckfb{min-width:200px;display:inline-block;max-width:100%;position:relative;vertical-align:top;height:2.25em}.autocomplete.svelte-75ckfb.svelte-75ckfb:not(.hide-arrow):not(.is-loading)::after{border:3px solid;border-radius:2px;border-right:0;border-top:0;content:" ";display:block;height:0.625em;margin-top:-0.4375em;pointer-events:none;position:absolute;top:50%;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);-webkit-transform-origin:center;transform-origin:center;width:0.625em;border-color:#3273dc;right:1.125em;z-index:4}.autocomplete.show-clear.svelte-75ckfb.svelte-75ckfb:not(.hide-arrow)::after{right:2.3em}.autocomplete.svelte-75ckfb .svelte-75ckfb{box-sizing:border-box}.autocomplete-input.svelte-75ckfb.svelte-75ckfb{font:inherit;width:100%;height:100%;padding:5px 11px}.autocomplete.svelte-75ckfb:not(.hide-arrow) .autocomplete-input.svelte-75ckfb{padding-right:2em}.autocomplete.show-clear.svelte-75ckfb:not(.hide-arrow) .autocomplete-input.svelte-75ckfb{padding-right:3.2em}.autocomplete.hide-arrow.show-clear.svelte-75ckfb .autocomplete-input.svelte-75ckfb{padding-right:2em}.autocomplete-list.svelte-75ckfb.svelte-75ckfb{background:#fff;position:relative;width:100%;overflow-y:auto;z-index:99;padding:10px 0;top:0px;border:1px solid #999;max-height:calc(15 * (1rem + 10px) + 15px);user-select:none}.autocomplete-list.svelte-75ckfb.svelte-75ckfb:empty{padding:0}.autocomplete-list-item.svelte-75ckfb.svelte-75ckfb{padding:5px 15px;color:#333;cursor:pointer;line-height:1}.autocomplete-list-item.confirmed.svelte-75ckfb.svelte-75ckfb{background-color:#789fed;color:#fff}.autocomplete-list-item.selected.svelte-75ckfb.svelte-75ckfb{background-color:#2e69e2;color:#fff}.autocomplete-list-item-no-results.svelte-75ckfb.svelte-75ckfb{padding:5px 15px;color:#999;line-height:1}.autocomplete-list-item-create.svelte-75ckfb.svelte-75ckfb{padding:5px 15px;line-height:1}.autocomplete-list-item-loading.svelte-75ckfb.svelte-75ckfb{padding:5px 15px;line-height:1}.autocomplete-list.hidden.svelte-75ckfb.svelte-75ckfb{visibility:hidden}.autocomplete.show-clear.svelte-75ckfb .autocomplete-clear-button.svelte-75ckfb{cursor:pointer;display:block;text-align:center;position:absolute;right:0.1em;padding:0.3em 0.6em;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);z-index:4}.autocomplete.svelte-75ckfb:not(.show-clear) .autocomplete-clear-button.svelte-75ckfb{display:none}.autocomplete.svelte-75ckfb select.svelte-75ckfb{display:none}.autocomplete.is-multiple.svelte-75ckfb .input-container.svelte-75ckfb{height:auto;box-shadow:inset 0 1px 2px rgba(10, 10, 10, 0.1);border-radius:4px;border:1px solid #b5b5b5;padding-left:0.4em;padding-right:0.4em;display:flex;flex-wrap:wrap;align-items:stretch;background-color:#fff}.autocomplete.is-multiple.svelte-75ckfb .tag.svelte-75ckfb{display:flex;margin-top:0.5em;margin-bottom:0.3em}.autocomplete.is-multiple.svelte-75ckfb .tag.is-delete.svelte-75ckfb{cursor:pointer}.autocomplete.is-multiple.svelte-75ckfb .tags.svelte-75ckfb{margin-right:0.3em;margin-bottom:0}.autocomplete.is-multiple.svelte-75ckfb .autocomplete-input.svelte-75ckfb{display:flex;width:100%;flex:1 1 50px;min-width:3em;border:none;box-shadow:none;background:none}.tbody.svelte-1rqkmsr:hover td.svelte-1rqkmsr{background:#eee}.duplicate.svelte-1rqkmsr.svelte-1rqkmsr{font-weight:bold;color:red}.desc.svelte-1rqkmsr.svelte-1rqkmsr{max-width:30vw;word-wrap:anywhere}.filters.svelte-1rqkmsr label.svelte-1rqkmsr{vertical-align:top}.to.svelte-k2jxqk{padding:2in 0 7in 0.7in;font-weight:800;font-size:20px}.end.svelte-k2jxqk{text-align:center;font-size:20px}.note.svelte-1771op8.svelte-1771op8{font-size:0.8em;font-style:italic;margin-bottom:0.5em}.np-attach.svelte-1771op8.svelte-1771op8{font-size:0.8em}.beneficiary-search.svelte-1771op8 .label.svelte-1771op8{font-size:16px}.login.svelte-15i3l0y.svelte-15i3l0y{flex-grow:1;display:flex;justify-content:center;align-items:center;flex-direction:column}.login.svelte-15i3l0y form.svelte-15i3l0y{background:#eee;box-shadow:0 0 3px rgba(0,0,0,0.3);border-radius:5px;max-width:500px;box-sizing:border-box;padding:24px 5%}.forgot.svelte-15i3l0y.svelte-15i3l0y{text-align:center;font-size:0.8em}.budget-import.svelte-1jjdgj9{margin:20px 0;padding:15px;border:1px solid #ddd;border-radius:4px;background-color:#f9f9f9}.import-form.svelte-1jjdgj9{display:flex;align-items:flex-end;gap:10px;margin:15px 0}.import-status.svelte-1jjdgj9{padding:10px;margin:10px 0;border-radius:4px}.import-status.error.svelte-1jjdgj9{background-color:#ffebee;color:#c62828;border:1px solid #ef9a9a}.import-status.success.svelte-1jjdgj9{background-color:#e8f5e9;color:#2e7d32;border:1px solid #a5d6a7}.import-results.svelte-1jjdgj9{margin-top:15px;padding:10px;border:1px solid #ddd;border-radius:4px;background-color:white}.error-list.svelte-1jjdgj9{color:#c62828;margin-left:20px}.add_year.svelte-5i4fal.svelte-5i4fal{text-align:right;padding-top:12px}.add_year.svelte-5i4fal label.svelte-5i4fal{display:inline-block}.add_year.svelte-5i4fal span.label.svelte-5i4fal{display:inline-block;width:fit-content}.add_year.svelte-5i4fal input.svelte-5i4fal{display:inline-block;width:8em}.filters.svelte-19ibicg label.svelte-19ibicg{display:block;margin:0;margin-right:1em}.filters.svelte-19ibicg label.svelte-19ibicg{display:block;margin:0;margin-right:1em}.form-group.svelte-rv49co.svelte-rv49co{margin-bottom:1rem}label.svelte-rv49co.svelte-rv49co{display:block}label.svelte-rv49co span.svelte-rv49co{display:block;margin-bottom:0.5rem}input.svelte-rv49co.svelte-rv49co{width:100%;max-width:400px}fieldset.svelte-rv49co.svelte-rv49co{border:none;padding:0;margin:0 0 1rem 0}legend.svelte-rv49co.svelte-rv49co{margin-bottom:0.5rem;font-weight:bold}.radio.svelte-rv49co .label.svelte-rv49co{display:inline-block;color:#000;margin-bottom:0.5rem}label.svelte-rv49co input[type=radio].svelte-rv49co{width:auto}@media(max-width: 600px){.radio.svelte-rv49co span.label.svelte-rv49co{display:inline}}.dropdown-footer.svelte-rv49co.svelte-rv49co{padding:0.5rem;font-size:0.875rem;color:#666}.filters.svelte-13m97bd label.svelte-13m97bd{margin-right:1ch}.print-wrap.svelte-13m97bd.svelte-13m97bd{display:none}.progress.svelte-13m97bd.svelte-13m97bd{padding:4px 1em;position:fixed;bottom:0;right:10%;background:#012b5d;color:#fff}table.adi.svelte-47ioky{margin-bottom:24px}.url.svelte-1hqoj36{margin-bottom:12px}main.svelte-ddloxj{display:flex;flex-direction:column}.user.svelte-ddloxj{color:#0f0}.logout.svelte-ddloxj{background:#fff;border:0;margin-left:2ch;padding:0.5rem 1.0rem;font-size:13.333px;font-weight:800;cursor:pointer;color:#000;text-decoration:none}