.ribbon {
    width: 100%;
}

/* removes bullet points in front of tab names */
.ribbon ul {
    margin: 0;
    padding: 0;
    list-style-type: none;
    background-image: url('../images/ribbon/border.gif');
    background-repeat: repeat-x;
    background-position: bottom;
}

/* ??? */
.ribbon .GP34Q33HQC,
.ribbon > div {
    padding-top: 2px;
    border-bottom: 0;
}

/* removes round shadowed border from tabs */
.ribbon ul li a, .ribbon ul li em, .ribbon ul li span {
    background-color: transparent !important;
    background-image: none !important;
}

/* adds spacing to tabs */
.ribbon ul li, .ribbon ul .GP34Q33GRC,
.ribbon ul .FOYMEWC-Q-A,
.ribbon ul .FOYMEWC-C-A {
    padding: 3px 16px 3px 16px;
    margin-left: 14px !important;
    margin-right: 14px !important;
    border: 1px solid transparent;
    margin-bottom: -1px !important; /*  less space at the bottom */
}

/* ??? */
.ribbon ul .GP34Q33GRC,
.ribbon ul .FOYMEWC-Q-A,
.ribbon ul .FOYMEWC-C-A {
    background-color: #fff;
    background-image: none !important;
    -webkit-border-top-left-radius: 5px;
    -webkit-border-top-right-radius: 5px;
    -moz-border-radius-topleft: 5px;
    -moz-border-radius-topright: 5px;
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
    border: 1px solid #e5e5e5;
    border-bottom: 0 !important;
}

/* ??? */
.ribbon ul .GP34Q33GRC a, .ribbon ul .GP34Q33GRC em, .ribbon ul .GP34Q33GRC span,
.ribbon ul .FOYMEWC-Q-A a, .ribbon ul .FOYMEWC-Q-A em, .ribbon ul .FOYMEWC-Q-A span,
.ribbon ul .FOYMEWC-C-A a, .ribbon ul .FOYMEWC-C-A em, .ribbon ul .FOYMEWC-C-A span {

    background-color: #fff;
    background-image: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* ??? */
.ribbon li a, .ribbon li em, .ribbon li .GP34Q33NRC, .ribbon span.GP34Q33NRC, .ribbon .li span.GP34Q33NRC,
.ribbon li a, .ribbon li em, .ribbon li .FOYMEWC-C-H, .ribbon span.FOYMEWC-C-H, .ribbon .li span.FOYMEWC-C-H {
    margin: 0 !important;
    padding: 0 !important;
}

/* makes tab font size bigger */
.ribbon ul .GP34Q33NRC,
.ribbon span span {
    padding-bottom: 0 !important;
    padding-top: 0 !important;
    font-size: 10pt !important;
}

/* removes active tab being bolded */
.ribbon ul li span {
    color: #3d4145;
    /*font-weight: normal !important;*/
    font-size: 10pt;
}

/* ??? */
.ribbon > div:first-child {
    border: none !important;
    padding: 0 !important;
}

/* removes grey bg of tabs and lowers text */
.ribbon .GP34Q33FRC,
.ribbon ul {
    background-color: #f7f7f7 !important;
    border: 0 !important;
}

/* ??? */
.ribbon .GP34Q33HQC,
.ribbon:nth-child(1) {
    border: 0;
    background-color: transparent;
}

/* ??? */
.ribbon .GP34Q33PPC,
.ribbon:nth-child(2) {
    border: 1px solid #f7f7f7;
    /* 	border-top: 1px solid #e2e2e2; */
}

/* removes the shadowed grey bg of toolbar */
.ribbon .x-toolbar {
    background-image: url('../images/ribbon/ribbon_background.png');
    background-repeat: repeat-x;
    background-position: top;
    height: 95px;
    overflow: hidden;
    border: 0;
}

/* RibbonTabGroup */

/* adds more spacing to toolbar */
.ribbonTabGroup {
    border-right: 1px solid #fff;
    background-image: url('../images/ribbon/group-spacer.gif');
    background-repeat: no-repeat;
    background-position: right;
    top: 0 !important;
    height: 82px !important;
    overflow: hidden;
    padding: 0 10px 0 6px;
    margin: 1px !important;
}

/* ??? */
.ribbonTabGroup .GP34Q33NN > table,
.ribbonTabGroup > div table {
    border-collapse: collapse;
    border-spacing: 0;
}

/* ??? */
.ribbonTabGroup .GP34Q33EO,
.ribbonTabGroup tbody tr:nth-child(2) td:nth-child(2) {
    margin: 5px;
}

/* ??? */
.ribbonTabGroup .GP34Q33NN > table td,
.ribbonTabGroup tbody tr td:nth-child(2) {
    padding: 0;
}

/* ??? */
.ribbonTabGroup > tbody > tr:nth-child(1) > td:nth-child(2) {
    background: none;
}

/* puts tab group labels at the bottom */
.ribbonTabGroup span.GP34Q33AO,
.ribbonTabGroup td > span {
    position: absolute;
    top: 64px;
    color: #3d4145;
    font-size: 8pt;
    text-shadow: 1px 1px #ffffff;
    left: 0;
    width: 96%;
}

/* ??? */
.ribbonTabGroup .GP34Q33FO,
.ribbonTabGroup > tbody > tr:nth-child(2) > td:nth-child(2) {
    vertical-align: top !important;
}

/* removes borders left and right of tabgroups */
.ribbonTabGroup td.GP34Q33OO,
.ribbonTabGroup td.GP34Q33NO,
.ribbonTabGroup td.GP34Q33PO,
.ribbonTabGroup td.GP34Q33IO,
.ribbonTabGroup td.GP34Q33MO,
.ribbonTabGroup td.GP34Q33CO,
.ribbonTabGroup td.GP34Q33BO,
.ribbonTabGroup td.GP34Q33DO,
.ribbonTabGroup > tbody > tr > td:first-child, .ribbonTabGroup > tbody > tr > td:last-child {
    background-image: none !important;
    height: 0 !important;
}

/* ??? */
.ribbonTabGroup .GP34Q33EK {
    margin-right: 5px;
    margin-left: 5px;
}

/* Fix remove button hover */
.ribbonTabGroup .GP34Q33O1 div:not(.GP34Q33C2) td,
.ribbonTabGroup .GP34Q33O1 div:not(.GP34Q33C2) td,
.ribbonTabGroup .FOYMEWC-l-f div:not(.FOYMEWC-l-j) td,
.ribbonTabGroup .FOYMEWC-l-f div:not(.FOYMEWC-l-j) div,
.ribbonTabGroup .FOYMEWC-q-f div:not(.FOYMEWC-q-j) td,
.ribbonTabGroup .FOYMEWC-q-f div:not(.FOYMEWC-q-j) div {
    background-image: none;
}