/**
 * Standardise.css
 * ======
 */
* {
    margin: 0px;
    outline: none;
}
html {
    min-height: 100%;
}
body {
    cursor: default;
    background: #FFFFFF;
    color: #000000;
    font-family: "Arial", Times, serif;
    font-size: 12px;
    min-height: 100%;
}
p {
    margin: 8px 0px;
}
ul, ol {
    margin: 8px 0;
    padding: 0 0 0 20px;
}
ul li,
ol li {
    margin: 2px 0px 2px 20px;
}

body {
    position: relative;
}
.f-indent {
    float: left;
    width: 1.5em;
    height: 1em;
}
.f-state-highlight {
    background-color: #FBEC88 !important;
}
.bg-green {
    background-color: #C8FDB5;
}
.bg-red {
    background-color: #FBDBDC;
}
.bg-orange {
    background-color: #FFDAA7;
}

/**
 * UI Corrections
 * All fPHP UI Elements would be named f-* and other formats are deprecated.
 * ======
 */
a, a:visited {
    text-decoration: none;
}
a:hover,
a:active {
    text-decoration: none;
}
abbr {
    cursor: help;
}
textarea {
    resize: vertical;
}
.ui-widget {
    font-size: 1em;
}
.ui-dialog {
    max-width: 98%;
    z-index: 99999;
}
.ui-dialog .ui-dialog-content {
    padding: .5em 0;
}
.ipop-content iframe {
    border: none;
    display: block;
    min-height: 480px;
    max-width: 100%;
    width: 100%;
}
.ui-icon-none {
    display: none;
}
.ui-multiselect-all .ui-icon,
.ui-multiselect-none .ui-icon {
    display: none;
}
.ui-multiselect-menu {
    max-width: 400px;
}
.f-well,
.ui-well {
    background-color: #e8e8e8;
    border: 1px solid #ccc;
    color: #000;
    margin-bottom: 1em;
    padding: 8px 4px;
}
.ui-tabs {
    position: static;
}
.ui-accordion .ui-accordion-content {
    padding: 1em;
}
.f-toolbar,
.ui-toolbar {
    margin-bottom: 1em;
    overflow: hidden; 
    padding: 0;
}
.ui-toolbar .ui-toolbar-row,
.f-toolbar .f-toolbar-row {
    padding: 3px 0;
    overflow: hidden;
}
.ui-toolbar .ui-buttonset {
    margin: 0 4px;
}
.ui-toolbar .ui-toolbar-row:last-of-type {
    margin-bottom: 0;
}
.ui-widget-header {
    background-position: 0 0;
}
.ui-state-default, 
.ui-widget-content .ui-state-default, 
.ui-widget-header .ui-state-default {
    color: #000;
}
.ui-menu {
    padding: 0;
}
.ui-menu .ui-menu {
    margin: 0;
}
.ui-menu .ui-menu-icon {
    margin-top: .25em;
    margin-left: .25em;
}
.ui-menu .ui-menu-divider {
    border-color: #ccc;
    margin: .5em 0;
}
.ui-menu-item > a {
    display: block;
}
ul.ui-autocomplete {
    box-sizing: content-box;
    -moz-box-sizing: content-box;
    -webkit-box-sizing: content-box;
    max-height: 200px;
    overflow-y: auto;
    overflow-x: hidden;
    min-width: 300px;
}
input.ui-loading,
.ui-autocomplete-loading {
    background-image: url(./images/loader-small.gif);
    background-position: 99% center;
    background-repeat: no-repeat;
    border: 1px solid #ccc;
}
.ui-autocomplete .ui-menu-item .label {
    display: block;
}
.ui-autocomplete .ui-menu-item .caption {
    font-size: .8em;
    font-style: italic;
}

/* System Actions */
ul.f-actions {
    z-index: 99999;
}
.f-actions,
.f-actions ul {
    padding: 0;
}
.f-actions ul {
    position: relative;
    z-index: 999;
}
.ui-menu .ui-menu-item a.f-trigger {
    display: none;
    height: 1.2em;
    padding-left: 5px;
}
.f-actions .ui-menu .ui-menu {
    z-index: 100;
}
.f-actions .ui-menu-item a {
    line-height: 1.3;
}
.f-actions .ui-menu-item .ui-menu-item {
    min-width: 160px;
}

/* Specials */
.hide, .hidden, .empty {
    display: none !important;
}
.invisible {
    visibility: hidden;
}
.ui-hr {
    border-top: 1px solid #ccc;
    width: 100%;
}
.ui-indent {
    display: inline-block;
    height: 1em;
    margin-right: 6px;
    width: 1em;
}
.ui-cf {
    display: block;
    clear: both;
}
.ui-clickable {
    cursor: pointer;
}

.fBreadcrumb {
    list-style: none;
    margin-bottom: 1em;
}
.fBreadcrumb li {
    display: inline-block;
    margin: 0;
    padding: 0;
}
.fBreadcrumb li a {
    display: inline-block;
    font-size: 11px;
    padding: 2px 4px;
}

/* Buttons */
.f-button {
    background-color: #666;
    border: 0;
    color: #fff;
    cursor: pointer;
    display: inline-block;
    padding: .5em .75em;
}
.f-button:hover {
    background-color: #000;
    color: #fff;
}
.f-button-block {
    display: block;
    width: 100%;
}
.f-button.f-state-busy {
    opacity: .75;
}

.f-buttonset > .f-button {
    margin: 0 -4px 0 0;
}
.f-buttonset > .f-button:last-of-type {
    margin-right: 0;
}

/* Images */
.f-image {
    height: auto;
    margin-bottom: 6px;
    max-width: 100%;
}
.f-image-left {
    float: left;
    margin-right: 6px;
    max-width: 300px;
}
.f-image-right {
    float: right;
    margin-left: 6px;
    max-width: 300px;
}
.f-image-block {
    float: none;
    display: block;
    height: auto;
    max-width: 100%;
}
@media screen and (max-width: 640px) {
    .f-image-left {
        display: block;
        float: none;
        margin: 0 auto 6px;
    }
    .f-image-right {
        display: block;
        float: none;
        margin: 0 auto 6px;
    }
}

/* Empty text for lists */
.ui-empty-block {
    padding: 6em 0;
    text-align: center;
}

/* Float Helpers */
.f-fl-ri,
.dock-right {
    float: right;
}
.f-fl-le,
.dock-left {
    float: left;
}

/* Alignment helpers */
.f-ta-ce,
.falc {
    text-align: center;
}
.f-ta-le,
.fall {
    text-align: left;
}
.f-ta-ri,
.falr {
    text-align: right;
}
.f-ta-ju,
.falj {
    text-align: justify;
}

/* Style Helpers */
.f-fs-bo {
    font-weight: bold;
}
.f-fs-it {
    font-style: italic;
}
.f-fs-ul {
    font-style: underline;
}

/* Default loader implementation */
.f-loading *,
.ui-loading *,
.ui-tabs-panel[aria-busy="true"] * {
    visibility: hidden;
}
.f-loading,
.ui-loading,
.ui-tabs-panel[aria-busy="true"] {
    background-image: url(./images/loader.gif);
    background-position: center center;
    background-repeat: no-repeat;
    cursor: wait;
    min-height: 20px;
    min-width: 48px;
}
span.ui-loading {
    display: inline-block;
}
select.ui-loading {
    background-image: url(./images/loader-small.gif) !important;
    min-height: 0;
}

/* Messages & Notifications */
#f-messages:empty {
    display: none;
}
#f-messages {
    margin: 6px 0;
}
#f-messages .item {
    padding: .5em 1em;
    border: 1px solid #829BFE;
    border-left-width: 5px;
    background-color: #E2F0FB;
    color: #333333;
    margin-bottom: .75em;
}
#f-messages .item.error {
    background-color: #FFE5E5;
    border-color: #C70913;
}
#f-notifications {
    position: fixed;
    margin: 15px;
    left: 0;
    bottom: 0;
    max-height: 400px;
    overflow-y: auto;
    max-width: 100%;
    width: 250px;
    z-index: 9999;
}
#f-notifications:empty {
    display: none;
}
#f-notifications .message {
    background-color: #333;
    border: 1px solid #000;
    color: #fff;
    margin-top: 4px;
    padding: .5em;
}
#f-notifications .message a {
    color: #fff;
    font-weight: bold;
}
@media screen and (max-width: 480x) {
    #f-notifications {
        width: 100%;
    }
}

/* Inline Lists */
ul.inline li {
    display: inline;
    list-style: none;
}

/* Bullet Lists */
ul.f-no-bullet {
    list-style: none;
}
ul.f-no-bullet li {
    margin-left: 0;
}
ul.f-bullet li,
ul.bullet li {
    list-style-position: inside;
    list-style-type: square;
    margin-left: 0;
}
ol.f-bullet li,
ol.bullet li {
    list-style-position: inside;
    list-style-type: decimal;
    margin-left: 12px;
}
ul.f-no-bullet, ol.f-no-bullet,
ul.no-bullet, ol.no-bullet {
    list-style: none;
}

/* Name Value Pairs */
ul.ui-nvp {
    list-style: none;
    margin: 0;
    padding: 0;
    overflow: hidden;
}
ul.ui-nvp > li {
    margin: 0;
    overflow: hidden;
    padding: .25em 0;
}
ul.ui-nvp > li > .label {
    display: inline-block;
    float: left;
    font-weight: bold;
    margin-right: 1%;
    width: 29%;
}
ul.ui-nvp > li > .value {
    display: block;
    float: left;
    margin: 0;
    width: 70%;
}

/* UI List: Table Object */
th {
    text-align: left;
}
table.ui-list {
    border-collapse: collapse;
    width: 100%;
}
table.ui-table th,
table.ui-table td {
    padding: .4em;
}
table.ui-list th {
    background-color: #eee;
    padding: .5em .4em;
}
table tr.overline td,
table.ui-list thead tr:first-of-type th {
    border-top: 1px solid #ccc;
}
table tr.underline td,
table.ui-list thead tr:last-of-type th {
    border-bottom: 1px solid #ccc;
}
table.ui-list tr td {
    padding: .25em;
}
table.ui-list tr td .title {
    font-weight: bold;
}
table.ui-list tr td .description {
    display: block;
    font-size: .9em;
}
table.ui-striped tbody tr:nth-child(even) {
    background-color: rgba(0,0,0,.2);
}
table.ui-bordered tr th,
table.ui-bordered tr td {
    border-top: 1px solid #ccc;
    border-left: 1px solid #ccc;
}
table.ui-bordered tr th:last-of-type,
table.ui-bordered tr td:last-of-type {
    border-right: 1px solid #ccc;
}
table.ui-bordered tr:last-of-type td {
    border-bottom: 1px solid #ccc;
}

/* Standard Forms */
.fForm input[type="checkbox"],
.fForm input[type="radio"],
.fForm input[type="button"],
.fForm input[type="submit"] {
    width: auto;
}
.fForm .form-item input.f-button {
    width: auto;
}
.fForm .form-item.type-radio input {
    display: inline-block;
}
.fForm .form-item-radio label {
    cursor: pointer;
    display: inline-block;
}
.cke textarea {
    width: 100% !important;
    max-width: 100%;
}
.fForm .form-item.buttons {
    padding-left: 0;
    padding-right: 0;
}

/* UI List: Filter Forms */
.filter-form {
    background-color: #F8F8F8;
    border: 1px solid #ccc;
    margin-bottom: 1em;
    padding: .5em 0;
}
.filter-form .form-item {
    padding: 4px 12px;
}
.filter-form .form-item.buttons {
    margin: 0;
}
.filter-form .form-item label {
    display: inline-block;
    font-weight: bold;
    min-width: 200px;
}
.filter-form .form-item input,
.filter-form .form-item select,
.filter-form .form-item textarea {
    border: 1px solid #ccc;
    max-width: 100%;
    padding: .25em;
    width: 200px;
}
.filter-form .form-item .ui-multiselect {
    width: 200px;
}
.filter-form .form-item.buttons input {
    border: none;
}
@media screen and (min-width: 768px) {
    .filter-form {
        overflow: hidden;
    }
    .filter-form .form-item {
        float: left;
        margin-left: 2%;
        width: 23.25%;
    }
    .filter-form .form-item:nth-of-type(4n+1) {
        clear: left;
        margin-left: 0;
    }
}

/* UI List: Unordered-List Object */
ul.ui-list {
    list-style: none;
    margin: 0;
    padding: 0;
}
ul.ui-list > li {
    margin: 0;
    padding: .25em;
}

/* UI List: Iconic Lists */
ul.ui-list-iconic > li {
    display: inline-block;
    text-align: center;
    width: 20%;
}
ul.ui-list-iconic > li .icon {
    background-color: #eee;
    display: block;
    height: 64px;
    margin: 0 auto;
    width: 64px;
}
ul.ui-list-iconic > li span {
    display: block;
    height: 2.2em;
    overflow: hidden;
}

/* UI Tables - Older ones are all deprecated */
th {
    text-align: left;
}
.f-table {
    border-collapse: collapse;
    border-spacing: 0;
    margin-bottom: 1em;
    min-width: 100%;
}
.f-table td {
    padding: 4px 3px;
    vertical-align: top;
}
.f-table-striped tbody tr:nth-child(even) {
    background-color: rgba(0,0,0,.25);
}
.f-table td.rh {
    background-color: #ddd !important;
    color: #333;
    font-weight: bold;
}
.f-table-border-all,
.f-table-border-outer {
    border: 1px solid #ccc;
}
.f-table-border-all th,
.f-table-border-all td,
.f-table-border-inner th,
.f-table-border-inner td {
    border: 1px solid #ccc;
}
@media screen {
    .f-table-striped tbody tr:hover {
        background-color: #b8e0f2;
    }
}
.f-table th,
.f-table tr.thead td {
    background-color: #ddd;
    padding: 8px 3px;
}
.f-table th.f-checkbox,
.f-table td.f-checkbox {
    width: 25px;
}
th.f-actions,
td.f-actions {
    width: 35px;
}

/* Table Forms */
.f-table .form-item input,
.f-table .form-item select {
    height: 2.2em;
    padding: 2px 2px;
    width: auto;
}

/* Name-value Pairs */
ul.f-nvp {
    list-style: none;
    margin: 0 0 6px 0;
    padding: 0;
}
ul.f-nvp > li {
    margin: 0;
    overflow: hidden;
    padding: 0;
    vertical-align: top;
}
ul.f-nvp > li > .label {
    display: inline-block;
    margin-right: 6px;
}
ul.f-nvp > li > .value {
    display: inline-block;
}
ul.f-nvp-balanced > li > .label {
    box-sizing: border-box;
    float: left;
    margin-right: 2%;
    width: 38%;
}
ul.f-nvp-balanced > li > .value {
    box-sizing: border-box;
    float: left;
    width: 60%;
}

/* Grid Lists */
ul.f-list {
    list-style: none;
    margin: 0 0 1em 0;
    padding: 0;
    overflow: hidden;
}
ul.f-list > li {
    display: block;
    float: left;
    margin: 0 0 .5em 0;
    width: 100%;
}
ul.f-list-grid > li {
    float: left;
    margin: 0;
    padding: 0;
    width: 100%;
}

/* Modal dialogs */
body.fphp-modal .fRegion:not(.region-content) {
    display: none;
}

/**
Module specific styles: Temporary
@todo move these to component directory as component.css
@example store/store.css, etc.
*/
.side-cart.fphp-fixed .store-cartentry-list-cont {
    max-height: 300px;
    overflow-y: auto;
}
#store-cart-flyout {
    background-color: #000;
    color: #fff;
    display: none;
    padding: 10px;
    min-width: 400px;
}
#store-cart-flyout .store-cartentry-list-cont {
    max-height: 300px;
    overflow-y: auto;
    overflow-x: visible;
}