body {
    background: #fff url(/images/background.gif) repeat-x top left;
}

h1,
.h1 {
    font-size: 18px;
}

h2,
.h2 {
    font-size: 14px;
}

h3,
.h3 {
    font-size: 12px;
}

#status-box {
    display: none;
    margin-right: 10px;

    /*
    Bootstrap by default gives 15px padding and 15px margin-bottom to .alert, let's override
    */
    margin-bottom: 0;
    padding: 10px;
}

/* Fix top margin to make sure input boxes align properly with label text. Probably this problem in default has to do with
 us using a smaller font size than default */
.checkbox label input {
    margin-top: 1px;
}

.radio label input {
    margin-top: 1px;
}

/* RECIPIENTS */
.recipients {
    color: #5d7fb7;
    /* These elements are used on <td> elements that listen to click events
    for navigation so we should hint that functionality with a pointer */
    cursor: pointer;
    font-size: 12px;
    padding-bottom: 1px !important;
    padding-top: 1px !important;
    padding-left:3px !important;
}

.recipients:hover {
    background-color: #d7e2f4;
}

/* STATUS */
.row {
    border-bottom: 1px solid #ccc;
}

.form-additional-fields {
    display: none;
}

.show-less-fields {
    display: none;
}


/* OTHER */
.no-margin {
    margin: 0;
}

.message-margin {
    padding-left: 5px;
}

.img-margin {
    margin: 5px;
}

td,
th {
    vertical-align: top;
}

img {
    vertical-align: middle;
}

.group-action-panel {
    width: 210px;
}

.half-width {
    width: 50%;
}

.col-padding {
    padding: 5px;
}

.radio-set {
    cursor: pointer;
}

.no-border-and-proper-align {
    border: 0;
    vertical-align: middle;
}
.small-body-text {
    font-size: 10px;
}

.loading-text {
    color: #999;
    margin-top: 50px;
}

.trBorderTop td {
    border-top: 1px solid #ccc;
}

.box {
    background-color: #efefef;
    border: 1px solid #ccc;
}

.box-header {
    font-weight: bold;
}

/* Message box styling */
.message-box-base {
    background-color: #f0f6f8;
    border: 1px dotted #407790;
    color: #407790;
    padding: 3px 10px;
    width: 380px;
}

.message-box-base img {
    padding-right: 10px;
}

.message-box-base h2 {
    margin: 0;
}

.message-box-header-only h2 {
    padding-top: 8px;
}

.message-box-red {
    background-color: #faeceb;
    border-color: #ff2222;
    color: #ff2222;
}

.message-box-yellow {
    background-color: #ffffea;
    border-color: #bfab00;
    color: #bfab00;
}



.properly-break-url {
    -ms-word-break: break-all;
    word-break: break-all;

    /* Non standard for webkit */
    word-break: break-word;

    -webkit-hyphens: auto;
    -moz-hyphens: auto;
    hyphens: auto;
}

.account-box {
    background-color: #f0f6f8;
    border: 1px dashed #407790;
    padding: 2px;
    width: 150px;
}

.account-box > tbody > tr > td {
    color: #407790;
    padding: 5px;
    white-space: nowrap;
}

.account-box img {
    vertical-align: middle;
}

.account-box,
.language-links {
    margin-right: 5px;
}

table.bottom-border > tbody > tr > td {
    border-bottom: 1px solid #ccc;
}

/* SMS_HANDLE, GROUPS */
.description-padding {
    padding-left: 15px;
}

/* TEMPLATES */
.select-fill-width {
    width: 150px;
}

/* SMS_HANDLE */
.contact-fill-width {
    width: 220px;
}

/* GROUPS */
.group-fill-width {
    width: 200px;
}

.checkboxes label {
    padding-right: 10px;
    white-space: nowrap;
}

.checkboxes input {
    vertical-align: middle;
}

.checkboxes label span {
    vertical-align: middle;
}

/* Sidebar (GROUPS/SMS_SEND/SMS_GROUP) */
.send-sidebar-right {
    padding-left: 10px !important;
    width: 180px;
}

.sidebar-content-header {
    border-left: 1px solid #ccc;
    padding-left: 8px;
}

.sidebar-content-holder {
    border-left: 1px solid #ccc;
    padding-bottom: 10px;
    padding-left: 8px;
}

.sidebar-content-input {
    width: 85px;
}

.sidebar-content-button {
    color: #ccc;
    font-weight: bold;
    text-decoration: none;
    vertical-align: middle;
}

.sidebar-listing-header {
    border-left: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    padding-left: 8px;
    padding-top: 0;
}

.sidebar-listing-outer {
    border-bottom: 1px solid #ccc;
    border-left: 1px solid #ccc;
    padding-bottom: 5px;
    padding-left: 5px;
    padding-top: 5px;
}

.sidebar-listing-inner {
    overflow: auto;
    padding-right: 5px;
}

.sidebar-inner-sms {
    height: 64px;
}

.sidebar-inner-sms-recipients {
    height: 400px;
}

.sidebar-inner-sms-groups {
    height: 450px;
}

.sidebar-inner-groups {
    height: 300px;
}

.table-choose-columns {
    border-spacing: 10px;
}

.table-choose-columns > tbody > tr > td {
    padding: 5px;
}

/* SMS_SEND */
.link-add-allrecipients {
    font-weight: bold;
    padding-top: 8px;
    padding-bottom: 8px;
}

/* SMS_GROUP & SMS_SEND*/
.message-type {
    padding-right:20px;
}

.btn-send {
    font-size:12px;
}

/* INTEGRATION */
.file-download-image {
    margin-bottom:5px;
}

.integration-parameters dt {
    width: 70px;
}

.integration-parameters dd {
    margin-left: 80px;
}


/* INCOMING SMS, GROUPS, QUEUED */
.table-filled {
    width: 100%;
}

.table-filled-cols td {
    width: 100%;
}

/* INCOMING SMS, INTEGRATION, OVERVIEW, STATUS, SETTINGS */
.table-top-aligned td {
    vertical-align: top;
}

.table-settings {
    background-color: #efefef;
    border: 1px solid #ccc;
    margin-right: 10px;
}

.table-settings > tbody > tr > td {
    padding: 10px;
}

.settings-box {
    background-color: #efefef;
    border: 1px solid #ccc;
    margin-right: 10px;
    padding: 10px;
}

.table-parameters {
    margin-left:10px;
    width: 100%;
}

/* SMS_HANDLE, BUY_CREDITS */
.table-listing {
    border: 0;
    border-spacing: 0;
    width: 100%;
}

.table-listing > tbody > tr > td {
    padding: 2px;
}

.search-date-table > tbody > tr > td {
    padding: 5px;
}

/* BATCH & SMS_SEND & SMS_GROUP */
.message-box {
    margin-bottom: 5px;
    width: 220px;
}

.recipients_type_description pre {
    margin-right: 10px;
}

.originator-fill-width {
    width: 221px;
}

.send-immediately {
    font-weight: bold;
    text-decoration: none;
}

.send-later {
    border: none;
    color: #5d7fb7;
    /* Used on an <input> we need to hint is clickable (used to pick dates) */
    cursor: pointer;
    font-weight: bold;
    padding: 0;
    text-decoration: underline;
}

.hour-minute-delimiter {
    margin-left: 1px;
    margin-right: 1px;
}

/* BATCH */
.message-preview-box {
    background-color: #efefef;
    margin-top: 3px;
    padding: 7px;
}

#date_send {
    margin-right: 5px;
    margin-top: 0;
    outline: 0;
    width: 80px;
}

/* STATUS */
.status-search-fields td {
    padding: 3px;
}

#status_table {
    border-collapse: collapse;
}

#status_table > tbody > tr > td {
    padding: 2px;
}

#status_help {
    border-collapse: collapse;
    display: none;
    border: 1px dashed #CCCCCC;
    width: 95%;
}
#status_help > tbody > tr > td {
    padding: 5px;
}

.link-no-underline {
    text-decoration: none;
}

.link-no-underline-color {
    color: #000;
    text-decoration: none;
}

.table-status-group-all-delivered {
    background-color: #e5fae5;
    border: 1px dotted #009600;
}

.table-status-group-all-delivered td {
    color: #009600;
}

.table-status-group-all-failed {
    background-color: #faeceb;
    border: 1px dotted #f22;
}

.table-status-group-all-failed td {
    color: #f22;
}

.table-status-group-mixed {
    background-color: #f0f6f8;
    border: 1px dotted #407790;
}

.table-status-group-mixed td {
    color: #407790;
}

.table-status-group {
    border-collapse: separate;
    width: 400px;
}

.table-status-group > tbody > tr > td {
    padding: 2px;
}

.table-padded > tbody > tr > td {
    padding: 3px;
}

/* CONTRACTS */
.sign-box {
    background-color: #f7f7f9 !important;
    border: 1px solid #ccc;
    border-spacing: 0;
    color: #666;
    font-weight: normal;
    padding: 12px;
    text-decoration: none;
}

.sign-box-submit-td {
    vertical-align: middle !important;
}

.language-link img {
    margin-right: 3px;
}

.language-link-chosen {
    font-weight: bold;
}

.contract-box {
    background-color: #efefef;
    border: 1px solid #ccc;
    height: 400px;
    overflow: hidden;
    padding: 7px;
    width: 650px;
}

.iframe-box {
    border: 0;
    height: 100%;
    width: 100%;
}

/* QUEUED & STATUS */
.sort-arrow {
    border: 0;
    vertical-align: middle;
    width: 5px;
}

.tooltip-cursor {
    /* Sometimes we use tooltip on an image without an anchor and as you
    can click to make it stick we hint that with a typical anchor cursor */
    cursor: pointer;
}

.tooltip-style {
    /* Render newlines */
    white-space: pre-wrap;
}

/* QUEUED & STATUS & GROUPS & SMS_SEND & SMS_GROUP */
.table-nostyle {
    border: 0;
    border-spacing: 0;
}

.table-nostyle > tbody > tr > td {
    padding: 2px;
}

.search-filter {
    margin-bottom: 5px;
    width: 90%;
}

/* QUEUED, INCOMING, STATUS */
.inactive-link {
    color: #ccc;
}

/* INCOMING SMS */
.compact-form {
    display: inline;
}

/* SETTINGS */
.input-warning {
    border: 2px solid #f22;
}

.icon-padding {
    padding-left:10px;
    padding-top:3px;
}

.icon-refresh-padding {
    padding-bottom:5px;
    padding-left:10px;
    padding-right:10px;
}

.status-text-padding {
    padding-left:10px;
    padding-right:10px;
}

.table-help {
    border: 1px dashed #ccc;
    width: 95%;
}

.table-help > tbody > tr > td {
    padding: 5px;
}

.text-padding {
    padding-right: 10px;
}

/* Warning: Please do not comma-separate declarations to avoid repetition as using nth-child selector breaks both in IE < 9 */
.table-striped-odd {
    background-color: #f9f9f9;
}

.table-striped-vertical tbody td:nth-of-type(odd),
.table-striped-vertical thead th:nth-of-type(odd){
    background-color: #f9f9f9;
}

/* End warning */

/* LOGIN */
.login-box {
    border: 0;
    margin-bottom: 10px;
    margin-top: 224px;
    width: 350px;
}

.login-box-logotype {
    margin-top: 25px;
    text-align: center;
    width: 190px;
}

.login-box-form {
    text-align: left;
    width: 140px;
}

/* OVERVIEW */
tr .active {
    background-color: #efefef;
}

.table-compact {
    /* Used for IE5-7 browsers */
    border-collapse: collapse;
    border-spacing: 0;
}

.table-compact > tbody > tr > td {
    padding: 0;
}

/* BOT */
.footer-holder {
    padding-top:10px;
}

/* SMS_GROUP, */
.table-text-counter,
.text-counter {
    width: 220px;
}

/* BUY_CREDITS */
.buy-credits-help {
    padding-bottom: 10px;
    padding-right: 20px;
}

.receipts-table-last-col {
    width: 16px;
}

.status-help-width {
    width: 32px;
}

.table-credits-help {
    border: 1px dashed #ccc;
    display: none;
    margin-bottom: 10px;
    width: 95%;
}

.table-credits-help > tbody > tr > td {
    padding: 5px;
}

.table-buy-credits {
    background-color: #efefef;
    border: 1px solid #ccc;
    width: 95%;
}
.table-buy-credits > tbody > tr > td {
    padding: 7px;
}

#display_amount > .h2 {
    color: #5d7fb7;
}

#display_amount {
    color: #808080;
    font-weight: bold;
}


/* General helpers */
.less-bottom-margin {
    margin-bottom: 5px;
}

.top-aligned {
    vertical-align: top;
}

.middle-aligned {
    vertical-align: middle;
}

.bottom-aligned {
    vertical-align: bottom;
}

a.link-with-image > img {
    margin-right: 3px;
}

/* TOP */
.main-table {
    background-color: #fff;
    border-left: 1px solid #ccc;
    border-right: 1px solid #ccc;
    border-spacing: 0;
    height: 100%;
    margin-left: auto;
    margin-right: auto;
    width: 640px;
}

.top-holder,
.menu-holder,
.footer-holder {
    padding-left: 20px;
}

.logo-holder {
    /* Used to vertically align logotypes in the middle (this height also implies the max height of a logotype) */
    height: 75px;
    line-height: 75px;
}

.header-top-row {
    border-bottom: 1px solid #ccc;
    padding-bottom: 1px;
    padding-top: 12px;
}

.main-table-content {
    padding-left: 25px;
    padding-top: 10px;
    vertical-align: top;
}

.menu-holder {
    padding-top: 10px;
    vertical-align: top;
    width: 134px;
}

.regular-view {
    width: 456px;
}

.contract-view {
    padding-right: 6px;
    width: 590px;
}

/* ERROR */
.table-error {
    margin-left: auto;
    margin-right: auto;
    margin-top: 20px;
}

.header-error {
    color: #1d3665;
    display: inline;
    font-size: 48px;
    font-weight: bold;
    margin: 0;
}

.holder-error {
    font-size: 24px;
    padding-left: 10px;
}

.table-no-spacing {
    border-spacing: 0;
}

/* NAVIGATION */
ul.menu-nav {
    width: 166px;
}

ul.menu-nav,
.menu-nav ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
}

.menu-nav li {
    margin-top: 1px;
}

.menu-nav li.menu-nav-new-section {
    margin-top: 20px;
}

.menu-nav-sub {
    /* Fixes a glitch in IE6+IE7 causing some spacing to be added in the <li> tag before nested <ul class="menu-nav-sub"> begins */
    display: inline;
}

/* General link formatting */
.menu-nav li a {
    /* Overrideable for reseller (menu item background color) */
    background-color: #5d7fb7;
    color: #fff;
    display: block;
    font-size: 12px;
    font-weight: bold;
    text-decoration: none;
    text-transform: uppercase;
}

.menu-nav li.menu-nav-selected a {
    background-color: #666;
}

.menu-nav li a:hover {
    background-color: #000;
}

/* - First level links */

/* -- Icon */
.menu-nav li a img {
    /* Overrideable for reseller (menu icon background color) */
    background-color: #d7e2f4;
    border-right: 1px solid #fff;
    margin-right: 2px;
    /* Images are 24x24 and we want the space to be 35x30 (= 5.5 x 2 + 3 x 2 in padding) */
    padding: 3px 5.5px;
    vertical-align: middle;
}

/* - Second level links */
.menu-nav-sub li {
    /* 18 + 17 = 35 pixels = image width with padding for menu icons */
    border-left: 18px solid #d7e2f4;
    margin-left: 17px;
}

.menu-nav-sub li a {
    /* Overrideable for reseller (sub-menu background color) */
    background-color: #83a1d1;
    border-left: 1px solid #fff;
    font-size: 11px;
    padding-left: 5.5px;
}




.table-menu {
    border-spacing: 1px;
}

.table-menu-blank {
    background-color: #fff;
    height: 20px;
}

/* ORIGINATORS */
.originators-fixed-width {
    width: 190px;
}

.originators_table > tbody > tr > td {
    padding: 5px;
}

/* TEMPLATES */
.templates-fixed-width {
    width: 190px;
}

/* QUEUED */
.queued-icons-fixed-width {
    width: 33%;
}

/* SMS_SEND and SMS_GROUP */
.template-table-first-column-fixed-width {
    vertical-align: middle;
    width: 20px;
}

/* SMS_STATUS */
#sms-status-table {
    border-collapse: collapse;
    border-spacing: 0;
    width: 400px;
}

#status > table > tbody > tr:first-child > td {
    padding-top: 5px;
}

#status > table > tbody > tr:last-child > td {
    padding-bottom: 5px;
}

#table-flag-descriptions > tbody > tr > td {
    padding-bottom: 3px;
}