﻿/* Style hyperlinks like buttons (this is being used on LRS page) */
a.button-hyperlink {
    display: inline-block;
    color: #fff;
    background-color: #8ba50b;
    font-family: "raleway-500";
    font-weight: 500;
    text-align: center;
    text-decoration: none;
    width: auto;
    height: 40px;
    height: 2.5rem;
    line-height: 40px;
    line-height: 2.5rem;
    font-size: 18px;
    font-size: 1.125rem;
    padding: 0 .5rem;
}

.cf .row .fill > * {
    width: 100%;
}

.cf select {
    -webkit-appearance: menulist;
}

.cf input[type=checkbox] {
    cursor: pointer;
}

.cf input[type=checkbox]:disabled {
    cursor: auto;
}

.cf input[type=radio] {
    -webkit-appearance: radio;
    cursor: pointer;
}

.cf label[for] {
    cursor: pointer;
}

/* numeric textboxes, remove spinner */
input[type=number]::-webkit-inner-spin-button, 
input[type=number]::-webkit-outer-spin-button { 
    -webkit-appearance: none; 
    margin: 0; 
}


/* Something in main-min.js turns our checkboxes and radio buttons into something stupid, this styles it to look correct */
.cf .checkbox, .cf .radiobutton {
    display: inline-block;
}

.cf .ss-check:before, .cf .ss-check.right:after {
    display: none;
}

/* better button sizing */
.cf button.small, .cf a.button.small {
    font-size: 14px !important;
    padding: 3px 5px !important;
}

.cf button:not(.visuallyhidden):not(.vanilla-element), .cf input:not(.visuallyhidden):not(.vanilla-element)[type=submit], .cf input:not(.visuallyhidden):not(.vanilla-element)[type=button], .cf a.button {
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    border: 1px solid #6A7D0A;
    display: inline-block;
    font-size: 16px;
    height: auto;
    line-height: normal;
    margin: 0;
    padding: 5px 8px;
    width: auto;
}

/* style disabled buttons */
.cf button:not(.visuallyhidden):not(.vanilla-element):disabled, .cf input:not(.visuallyhidden):not(.vanilla-element)[type=submit]:disabled, .cf input:not(.visuallyhidden):not(.vanilla-element)[type=button]:disabled, .cf a.button:disabled {
    background-color: lightgray;
    border-color: lightgray;
    cursor: auto;
}

.cf button:not(.visuallyhidden):not(.vanilla-element):disabled:hover, .cf input:not(.visuallyhidden):not(.vanilla-element)[type=submit]:disabled:hover, .cf input:not(.visuallyhidden):not(.vanilla-element)[type=button]:disabled:hover, .cf a.button:disabled {
    background-color: lightgray;
    border-color: lightgray;
}


/* Anchor Buttons */
.cf a.button {
    background-color: #778D09;
    color: white;
    font-family: raleway-500;
    text-decoration: none;
}

/* Placeholder */
.cf ::-webkit-input-placeholder { /* WebKit, Blink, Edge */
    color:    lightgray;
}
.cf :-moz-placeholder { /* Mozilla Firefox 4 to 18 */
   color:    lightgray;
   opacity:  1;
}
.cf ::-moz-placeholder { /* Mozilla Firefox 19+ */
   color:    lightgray;
   opacity:  1;
}
.cf :-ms-input-placeholder { /* Internet Explorer 10-11 */
   color:    lightgray;
}


/* Layout */
.cf * {
    -webkit-box-sizing: border-box !important;
    -moz-box-sizing: border-box !important;
    box-sizing: border-box !important;
}

.cf .section {
    margin-bottom: 20px;
}

.cf .section .section-header {
    color: #4b4643;
    font-family: "raleway-300";
    font-weight: 300;
    border-bottom: 1px solid #CACACA;
    margin: 0;
    font-size: 24px;
    font-size: 1.5rem;
    line-height: 40px;
    line-height: 2.5rem;
    margin-bottom: 20px;
    margin-bottom: 1.25rem;
}

.cf .section .section-header-title {
    display: inline-block;
    width: 49%;
}

.cf .section .section-header-actions {
    display: inline-block;
    text-align: right;
    width: 50%;
}

.cf .section .section-header-actions button {
    font-size: 14px !important;
    padding: 3px 5px !important;
    vertical-align: text-top;
}

.cf .header {
    font-size: 20px;
    font-size: 1.25em;
    font-weight: bold;
    margin: 0 0 10px 0;
}

.cf .header .header-title {
    display: inline-block;
}

.cf .header .header-actions {
    display: inline-block;
    margin-left: 20px;
}

.cf .header .header-actions button {
    font-size: 14px !important;
    padding: 3px 5px !important;
    vertical-align: text-top;
}

.cf .sub-header {
    font-size: 1em;
    font-weight: bold;
    margin: 0 0 5px 0;
}

.cf .row {
    margin-top: 10px;
    margin-bottom: 10px;
}

.cf .row:first-child, .cf .row.first {
    margin-top: 0;
}

.cf .row:last-child, .cf .row.last {
    margin-bottom: 0;
}

.cf .row.spaced {
    margin-top: 10px;
    margin-bottom: 10px;
}

.cf .row .field-label {
    font-weight: bold;
    height: 40px;
    padding-top: 5px;
    padding-bottom: 5px;
}

.cf .row .field {
    background: #fff;
    color: #4b4643;
    -webkit-opacity: 1;
    height: 40px;
    font-size: 16px;
    -moz-transition: 0.1s;
    -o-transition: 0.1s;
    -webkit-transition: 0.1s;
    transition: 0.1s;
}

.cf .row .field > * {
    width: 100%;
}

.cf .row .field .labeled-input {
    display: inline-block;
    height: 40px;
    padding: 5px 12px;
    width: auto;
}

.cf .row .field .labeled-input * {
    height: 100%;
    vertical-align: middle;
    width: 16px;
}

.cf .row .field .labeled-input:first-child, .cf .row .field .labeled-input.first {
    padding-left: 0;
}

.cf .row .field .labeled-input:last-child, .cf .row .field .labeled-input.last {
    padding-right: 0;
}

.cf .row input[type=submit] {
    text-align: right;
}


/* Inputs */
.cf input[type=text], .cf input.k-textbox {
    height: 40px;
    padding: 5px 12px;
}

/* Numeric TextBox inputs have no border (the border is on a parent element), which means they can be 2px shorter (1px for bottom and top border).  Other inputs have border */
.cf .k-numerictextbox .k-numeric-wrap input {
    height: 38px;
}


/* Misc */
.cf .swg-form .swg-form-message {
    color: red;
}

.cf hr {
    margin: 15px 0;
}

.cf .note {
    font-style: italic;
}

.cf .note:empty {
    margin: 0;
}

.cf .opaque-container {
    position: relative;
}

.cf .opaque-container .opaque {
    background-color: white;
    height: 100%;
    opacity: .5;
    position: absolute;
    width: 100%;
    z-index: 9999; /* Kendo Window z-index is 10002, we want to be "under" that */
}


/* Kendo Widgets */
.cf .k-dropdown .k-dropdown-wrap {
    height: 40px;
    padding: 5px 12px;
}

.k-window .k-window-content {
    padding: 1em;
}


/* Validation */
.cf .k-tooltip-validation.k-invalid-msg.field-validation-error {
    display: none !important;
}

.cf .field .k-invalid {
    border-color: red;
}

.cf .k-widget.k-invalid .k-dropdown-wrap, .cf .k-widget.k-invalid .k-picker-wrap {
    border-color: red;
}

.cf .required .field-label:after {
    content: '*';
}


/* Address Management */
.address-actions {
    margin-top: 10px;
}


/* ListServ Archive */
#archive-grid tr {
    cursor: pointer;
}

#archive-grid tr:hover {
    background-color: lightgray;
}

.archive-messages {
    height: 450px;
    overflow-y: auto;
    padding-right: 5px; /* padding between messages and scroll bar */
}

.archive-message {
    background-color: #f1f1f1;
    border: 1px solid #bbbbbb;
    padding: 10px;
    margin-bottom: 25px;
}

.archive-message .archive-message-subject {
    margin-right: 10px;
}

.archive-message .archive-message-author {
    margin-right: 10px;
}

.archive-message fieldset {
    margin-bottom: 5px;
}

.archive-message legend > * {
    font-size: 12px;
    margin: 0 10px;
}

.archive-message .archive-message-attachment {
    display: inline-block;
    font-size: 14px;
    margin: 2px 0;
}
