/* KeyBase player
----------------------------------------------*/
.keybase-player-window {
    height: 600px;
}

.keybase-player-currentnode, .keybase-player-path,
.keybase-player-remainingitems, .keybase-player-discardeditems {
    border: solid 1px #cccccc;
}

.keybase-player-drag-leftright {
    cursor: col-resize;
}

.keybase-player-drag-updown {
    cursor: row-resize;
}

.keybase-player-window h3 {
    margin: 0;
    padding: 5px;
    background-color: #0088cc;
    color: #ffffff;
    font-weight: bold;
}

.keybase-player-menu {
    float: right;
    font-size: 12px;
    font-weight: normal;
    color: #000000;
    height: 20px;
}

.keybase-player-menu .keybase-player-startover,
.keybase-player-menu .keybase-player-stepback,
.keybase-player-filter, .keybase-player-filter-remove {
    display: inline-block;
    width: 24px;
    height: 24px;
    position: relative;
    top: -3px;
    background-image: url('media/button_face.png');
    background-repeat: no-repeat;
    margin-left: 3px;
}

.keybase-player-menu .keybase-player-startover a,
.keybase-player-menu .keybase-player-stepback a,
.keybase-player-filter a, .keybase-player-filter-remove a {
    width: 24px;
    height: 24px;
    display: inline-block;
    background-repeat: no-repeat;
}

.keybase-player-menu .keybase-player-startover a {
    background-image: url('media/button_icon_restart.png');
}

.keybase-player-menu .keybase-player-stepback a {
    background-image: url('media/button_icon_step_back.png');
}

.keybase-player-filter a {
    background-image: url('media/filter-buttoned.png');
}

.keybase-player-filter-remove a {
    background-image: url('media/trash.gif');
    display: inline-block;
    background-position: 8px;
}

.keybase-player-currentnode>div, .keybase-player-path>div,
.keybase-player-remainingitems>div, .keybase-player-discardeditems>div {
    overflow-y: auto;
    padding: 10px 0;
}

.keybase-player-currentnode ul, .keybase-player-path ol,
.keybase-player-remainingitems ul, .keybase-player-discardeditems ul,
.keybase-player-currentnode .keybase-player-result {
    padding-left: 25px;
}

.keybase-player-path li {
    list-style-type: disc;
}

.keybase-player-tokey::after {
    display: inline-block;
    padding-left: 5px;
    content: "►";
}

/*
*   Lightbox
*/
#keybase-lightbox {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 576px;
    /*height: 520px;*/
    transform: translate(-50%);
    background: #fff;
    z-index: 1001;
    display: none;
}

#keybase-lightbox-shadow {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #000;
    filter: alpha(opacity=75);
    -moz-opacity: 0.75;
    -khtml-opacity: 0.75;
    opacity: 0.75;
    z-index: 1000;
    display: none;
}

.keybase-lightbox-close {
    border-color: #333333;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
    margin: 3px;
    cursor: default;
}

.keybase-lightbox-content {
    clear: both;
    padding: 10px 20px 30px 20px;
}

.keybase-local-filter>div {
    float: left;
}

.keybase-local-filter label {
    display: block;
    width: 250px;
    background-color: #0088cc;
    color: #ffffff;
    font-weight: bold;
    padding: 5px;
    margin: 0;
}

select[name=includedItems], select[name=excludedItems] {
    height: 400px;
    width: 250px;
    overflow-y: auto;
}

.keybase-filter-buttons {
    width: 36px;
    margin-top: 100px;
}

.keybase-filter-buttons>span {
    display: block;
    width: 24px;
    height: 24px;
    background-image: url("media/button_face.png");
    background-repeat: no-repeat;
    margin: 5px;
}

.keybase-filter-buttons button {
    width: 24px;
    height: 24px;
    background-color: transparent;
}

.keybase-filter-button-excl {
    background-image: url("media/button_icon_move_right.png");
}

.keybase-filter-button-excl-all {
    background-image: url("media/button_icon_move_all_right.png");
}

.keybase-filter-button-incl {
    background-image: url("media/button_icon_move_left.png");
}

.keybase-filter-button-incl-all {
    background-image: url("media/button_icon_move_all_left.png");
}

.keybase-local-filter-footer {
    clear: both;
    width: 100%;
    text-align: right;
    padding: 5px 0;
}

.keybase-local-filter-footer button {
    padding: 5px 10px;
    font-weight: bold;
    color: #0088cc;
}

/* bracketed key display
-------------------------------------------*/
.keybase-bracketed-key {
    margin: 20px 0 30px 0;
}

.keybase-bracketed-key .keybase-couplet {
    margin: 15px 0;
    border-bottom: solid 1px #eee;
}

.keybase-bracketed-key .keybase-couplet:last-child {
    border-bottom: 0;
}

.keybase-bracketed-key .keybase-lead {
    margin: 8px 10px;
    padding-left: 35px;
}

.keybase-bracketed-key .keybase-lead::before, .keybase-bracketed-key .keybase-lead::after {
    display: block;
    clear: both;
    content: '';
}

.keybase-bracketed-key .keybase-from-node {
    display: inline-block;
    float: left;
    margin-left: -35px;
    font-weight: bold;
}

.keybase-bracketed-key .keybase-from-node::after {
    content: ':';
}

.keybase-bracketed-key .keybase-lead:first-child .keybase-from-node::after {
    content: '';
}

.keybase-bracketed-key .keybase-lead-text {
    display: block;
    background: content-box;
}

.keybase-bracketed-key .keybase-to-node {
    display: inline-block;
    float: right;
    font-weight: bold;
}

.keybase-bracketed-key .keybase-to-item {
    display: inline-block;
    float: right;
    margin-left: 30px;
}

/* Indented key display
-----------------------------------*/
.keybase-indented-key {
    margin-top: 20px;
    margin-bottom: 30px;
}

.keybase-indented-key ul {
    padding-left: 20px;
}

.keybase-indented-key>ul {
    padding-left: 0;
    margin: 0 10px;
}

.keybase-indented-key li {
    list-style-type: none;
}

.keybase-indented-key .keybase-lead {
    margin-bottom: 10px;
}

.keybase-indented-key .keybase-lead::before, .keybase-indented-key .keybase-lead::after {
    display: block;
    clear: both;
    content: '';
}

.keybase-indented-key .keybase-from-node {
    display: inline-block;
    margin-right: 6px;
    font-weight: bold;
}

.keybase-indented-key .keybase-to-node, .keybase-indented-key .keybase-to-item {
    display: inline-block;
    float: right;
    margin-left: 308px;
}

.keybase-indented-key .keybase-from-node::after {
    content: ':';
    margin-right: 0;
}

.keybase-indented-key .keybase-couplet li:first-child>.keybase-lead>.keybase-from-node::after {
    content: '.';
    color: #fff;
}

.external-filters {
    margin-bottom: 10px;
}

/*
*****************************************/
.keybase-bracketed-key-filter, .keybase-indented-key-filter {
    text-align: right;
    margin-bottom: -25px;
}

.keybase-to-item {
    font-weight: bold;
}