body {
    font-size: 15px;
    line-height: 1.6;
    color: #333;
    background: white;
    padding-top: 100px;
    padding-bottom: 20px;
}
.container{
    width:60%;
}
.main{
    width: 80%;
}

.ajax-spinner {
    padding: 13px;
    background: white url('../images/spinner.gif') no-repeat 50% 50%;
    font-size: 0;
    z-index: 123456;
    display: block;
}

div.flash {
    color: black;
    background: #FFDDDD;
    border: 1px solid #E03323;
    padding: 1em;
    margin: 1em 0;
}

div.flash.error, .red-color {
    color: red;
}
.black-color,black,positive {
    color: black;
}
.negative{
    color:red;
}

a[href^="error:"] {
    background: red;
    color: white;
}

tr.disabled_row td {
    color: #aaa;
    text-decoration: line-through;
}

tr.disabled_row td.service {
    color: #000;
    text-decoration: none;
}

table.logins, table.rad, table.osobni, table.dochazka, table.acl, table.majetek, table.saldo, table.vyplatniPasky, table.obedy, table.vav, table.sazby, table.ekonomika, table.terminy, table.mailer {
    border-collapse: collapse;
    border: 1px solid #aaa;
}

table.logins th,
table.logins td,
table.osobni th,
table.osobni td,
table.dochazka th,
table.dochazka td,
table.acl th,
table.acl td,
table.majetek th,
table.majetek td,
table.saldo td,
table.saldo th,
table.vyplatniPasky td,
table.vyplatniPasky th,
table.obedy td,
table.prace th,
table.prace td,
table.vav th,
table.vav td,
table.sazby th,
table.sazby td,
table.ekonomika th,
table.ekonomika td,
table.terminy th,
table.terminy td,
table.efektivita th,
table.efektivita td,
table.mailer th,
table.mailer td,
table.rad th, table.rad td {
    border: 1px solid #aaa;
    padding: 0.2em 0.5em;

}

table.majetek tr.vyrazeno th, table.majetek tr.vyrazeno td {
    text-decoration: line-through;
}

table.majetek tr.vyrazeno th.nolinethrough, table.majetek tr.vyrazeno td.nolinethrough {
    text-decoration: none;
}

table.efektivita td {
    text-align: right;
}

table.efektivita td.l {
    text-align: left;
}

table tbody th {
    text-align: left;
}

td.c, th.c, input.c {
    text-align: center
}

td.l, th.l, input.l {
    text-align: left
}

td.r, th.r, input.r {
    text-align: right
}

input.r {
    padding-right: 0.3em;
}

input.error {
    background-color: #faa;
}

table.acl img {
    vertical-align: middle
}

table.acl tr.disabled {
    color: #aaa;
}

table.acl tr.disabled a {
    font-weight: normal;
    color: #aaa;
}

a img {
    border: none;
}

table.obedy tr.green {
    background-color: #f3fff3;
}

table.obedy tr.red {
    background-color: #fff3f3;
}

input {
    border: 1px solid #aaa;
}

input.readonly {
    background-color: #eee;
    box-shadow: none !important;
    border: 1px solid #aaa;
}

.green {
    color: #0a0;
}

.red {
    color: #c00;
}

.orange {
    color: #faa;
}

.grey {
    color: #aaa;
}

table.ekonomika td.text {
    font-family: Georgia, serif;
}

table.ekonomika td.nazev {
    max-width: 25em;
    text-overflow: ellipsis;
    overflow: hidden;
    font-family: Georgia, serif;
}

table.ekonomika th {
    text-align: center;
}

table.ekonomika th.l {
    text-align: left;
}

table.ekonomika td.value {
    text-align: right;
}
table.terminy{
    font-size: 12px;
}
table.terminy tr{
    height: 35px;
}
table.terminy{
    border-right: none;
}
table.terminy td.nazev-borderless {
    border:none;
}
tr.percentageTooHigh {
    background-color: #fdd;
}

tr.percentageZero {
    background-color: #ffd;
}

table.efektivita th[title] {
    text-decoration: underline;
}

table.efektivita td.title, table.ekonomika td[title] {
    background-color: #ffe;
}

table.efektivita tfoot td {
    line-height: 1em;
    border: none;
}

td#left_arrow {
    background-image: url("../images/arrow_left.png");
    line-height: 60px;
    background-repeat: no-repeat;
    background-position: top center;
}

td#connector {
    background-image: url("../images/connecting_line.png");
    background-repeat: repeat-x;
    background-position: top center;
}

td#middle_arrow {
    background-image: url("../images/arrow_middle.png");
    background-repeat: no-repeat;
    background-position: top center;
}

td#right_arrow {
    background-image: url("../images/arrow_right.png");
    background-repeat: no-repeat;
    background-position: top center;
}

td#red_arrow_left {
    background-image: url("../images/red_arrow_left.png");
    background-repeat: no-repeat;
    background-position: top center;
}

td#red_arrow_middle {
    background-image: url("../images/red_arrow_middle.png");
    background-repeat: no-repeat;
    background-position: top center;
}

td#red_arrow_right {
    background-image: url("../images/red_arrow_right.png");
    background-repeat: no-repeat;
    background-position: top center;
}

tr.strediskoHeader {
    background-color: #def;
}

tr.soucetLine {
    background-color: #def;
}

tr.nakladyLine {
    background-color: #fdd;
}

tr.trzbyLine {
    background-color: #C6E5C4;
}

td.c img {
    vertical-align: middle;
}

table.ekonomika td, table.ekonomika th, table.majetek td {
    font-size: 15px;
}

table.ekonomika tr.sum td, table.ekonomika tr.sum th {
    color: #f00;
}

table.ekonomika tr.sum th {
    text-transform: uppercase;
}

table.ekonomika td, table.majetek td.mono {
    font-family: Consolas, monaco, monospace;
}

table.zakazky th {
    text-align: left;
}

table.vmiddle > tbody > tr > td, table.vmiddle > tbody > tr > th {
    vertical-align: middle;
}

a.active, li.dropdown.active {
    background-color: #FFE944 !important;
    text-decoration: none;
    color: #000 !important;
}

#navbar .navbar-nav > li > a.active:hover, #navbar .navbar-nav > li > a.active:focus {
    background-color: #FFE944;
    text-shadow: none;
    color: #aaa !important;
}

ul.errors {
    color: #f00;
}

ul.error {
    border: 1px solid #f00;
    background-color: #fdd;
    padding-top: 1em;
    padding-bottom: 1em;
}

#issuedInvoices tr.paid, #receivedInvoices tr.paid, #advanceIssuedInvoices tr.paid {
    display: none;
}

#issuedInvoices th.sorted.ascending:after, #receivedInvoices th.sorted.ascending:after, #ordersList th.sorted.ascending:after, #advanceIssuedInvoices th.sorted.ascending:after {
    content: "  \2191";
}

#issuedInvoices th.sorted.descending:after, #receivedInvoices th.sorted.descending:after, #ordersList th.sorted.descending:after, #advanceIssuedInvoices th.sorted.descending:after {
    content: " \2193";
}

#issuedInvoices thead th, #receivedInvoices thead th, #ordersList thead th, #advanceIssuedInvoices thead th {
    cursor: pointer;
}

input[type='checkbox'] {
    margin-right: 0.5em;
}

table td.nobreak {
    white-space: nowrap;
}

button.clipboard {
    margin-bottom: 0.5em;
}

table#ordersList tr.hidden, table#ordersList tr.hiddenByName, table#issuedInvoices tr.hidden, table#issuedInvoices tr.hiddenByFilter,
table#receivedInvoices tr.hidden, table#receivedInvoices tr.hiddenByFilter, table.ekonomika tr.hidden, table.ekonomika tr.hiddenByName,
table#advanceIssuedInvoices tr.hidden, table#advanceIssuedInvoices tr.hiddenByFilter {
    display: none !important;
}

table#ordersList .mark, table#issuedInvoices .mark, table#receivedInvoices .mark, table.ekonomika .mark, table#advanceIssuedInvoices .mark {
    background-color: yellow;
    padding: 0;
}

span.lightGreyLineThrough {
    color: #ccc;
}

span.lightGreyLineThrough:hover {
    color: #333;
}

tr.invalid td {
    color: #aaa;
}

label.required {
    color: red;
}

th.endMonth {
    background-color: #fcc;
}

#frm-deadlinesForm-datum_zahajeni, #frm-deadlinesForm-datum_ukonceni, .date form-control{
    width: 80px;
}

.pause{
    height: 50px;
}

.gstartdate, .genddate, .gresource {
    font-size: 8px!important;
}
.gstartdate div, .gplanstartdate, .gplanenddate, .gstartdate, .genddate {
    font-size: 8px!important;
}
.gadditional, .gresource, .gduration, .gpccomplete, .gcost {
    width: 60px;
    max-width: 60px;
    min-width: 60px;
}
td.gstartdate{
    width: 65px;
}
.genddate div{
    width: 65px;
}
.matrix ul.branch li{
    cursor: pointer;
}
.matrix ul li a{
    text-decoration: none;
    color:black;
}
.matrix ul {
    list-style: none;
    padding: 0;
}
.matrix ul ul{
    padding-left: 20px;
}

.matrix li {
    position: relative;
    padding-left: 20px;
}
.order-item-icons{
    color:black;
    text-decoration: none;
}
#overlay{
    position: fixed;
    top: 0;
    left: 0;
    z-index: 9999;
    width: 100%;
    height:100vh;
    display: block;
    margin: 0px;
    padding: 0px;
    background: rgba(0,0,0,0.6);
}
.cv-spinner {
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}
.spinner {
    width: 40px;
    height: 40px;
    border: 4px #ddd solid;
    border-top: 4px #2e93e6 solid;
    border-radius: 50%;
    animation: sp-anime 0.8s infinite linear;
}
.errors{
    padding: 0px;
}
.errors li{
    list-style: none;
    color: #c82630;
    font-size: 13px;
}
@keyframes sp-anime {
    100% {
        transform: rotate(360deg);
    }
}

#frm-addNewOrderItemForm-unitPrice {
    position: relative;
}

#frm-addNewOrderItemForm-unitPrice::after {
    content: attr(placeholder);
    position: absolute;
    top: 0;
    left: 0;
    pointer-events: none;
    opacity: 0.5;
}

/*COMMENTS SECTION*/

.content-item {
    padding:30px 0;
    background-color:#FFFFFF;
}

.content-item.grey {
    background-color:#F0F0F0;
    padding:50px 0;
    height:100%;
}

.content-item h2 {
    font-weight:700;
    font-size:35px;
    line-height:45px;
    text-transform:uppercase;
    margin:20px 0;
}

.content-item h3 {
    font-weight:400;
    font-size:20px;
    color:#555555;
    margin:10px 0 15px;
    padding:0;
}

.content-headline {
    height:1px;
    text-align:center;
    margin:20px 0 70px;
}

.content-headline h2 {
    background-color:#FFFFFF;
    display:inline-block;
    margin:-20px auto 0;
    padding:0 20px;
}

.grey .content-headline h2 {
    background-color:#F0F0F0;
}

.content-headline h3 {
    font-size:14px;
    color:#AAAAAA;
    display:block;
}


#comments {
    box-shadow: 0 -1px 6px 1px rgba(0,0,0,0.1);
    background-color:#FFFFFF;
}

#comments form {
    margin-bottom:30px;
}

#comments .btn {
    margin-top:7px;
}

#comments form fieldset {
    clear:both;
}

#comments form textarea {
    height:100px;
}

#comments .media {
    border-top:1px dashed #DDDDDD;
    padding:20px 0;
    margin:0;
}

#comments .media > .pull-left {
    margin-right:20px;
    text-decoration: none;
}
.avatar {
    font-size: 17px;
    line-height: 17px;
    font-weight: 400;
    color:white;
    border-radius: 50%;
    background: #0081D8;
    padding: 10px;
    max-width: 50px !important;
    max-height: 50px !important;
}

#comments .media img {
    max-width:100px;
}

#comments .media h4 {
    margin:0 0 10px;
}

#comments .media h4 span {
    font-size:14px;
    float:right;
    color:#999999;
}

#comments .media p {
    margin-bottom:15px;
    text-align:justify;
    font-size: 13px;
}

#comments .media-detail {
    margin:0;
}

#comments .media-detail li {
    color:#AAAAAA;
    font-size:12px;
    padding-right: 10px;
    font-weight:600;
}

#comments .media-detail a:hover {
    text-decoration:underline;
}

#comments .media-detail li:last-child {
    padding-right:0;
}

#comments .media-detail li i {
    color:#666666;
    font-size:15px;
    margin-right:10px;
}
.avatar{
    line-height: 50px;
}
.tooltip-inner {
    max-width: 1500px;
    white-space: pre-wrap;
}
th.tooltip{
    position:relative;
    z-index: 35;
}
.budgets li {
    list-style: none;
}
.real{
    border-left: 3px solid black;
}

.info-text{
    border:1px solid #cccccc;
    padding: 25px;
}
.tinymce-body{
    border:1px solid #cccccc;
}
th.sortable, .asc, .desc{
    cursor: pointer;
    min-width: 55px;
}
th.sortable::after{
    padding-left: 5px;
    font-family: "Font Awesome 6 Free";
    content: "\f0dc";
}
th.asc::after{
    padding-left: 5px;
    font-family: "Font Awesome 6 Free";
    content: "\f0de";
}
th.desc::after{
    padding-left: 5px;
    font-family: "Font Awesome 6 Free";
    content: "\f0dd";
}
.report td{
    max-width: 350px;
}

.tooltip-inner{
    text-align: left;
}

.dochazka .tooltip{
    min-width: 150px;
    font-size: 15px;
}

.division-row {
    cursor: pointer;
    background: #f6f8fa;
}
.division.collapsed .division-row {
    opacity: .9;
}

tr.person-row, th.person-row{
    background-color: #faa !important;
    font-style: italic;
}
tr.uzavreno, th.uzavreno{
    background-color: #78c8ff !important;
    font-style: italic;
}
tr.schvaleno, th.schvaleno{
    background-color: #c0ffc0 !important;
    font-style:normal;
    font-weight: 900;
}
th.schvaleno{
    font-style: italic;
    font-weight: 600;
}
.legend{
    min-width: 150px;
}
table.report th.col-off,
table.report td.col-off {
    background-color: #f0f1f2;
}
/* pravý okraj u každého dne */
table.report td.day-cell {
    border-right: 1px solid #e0e0e0;
}

/* poslední den v měsíci bez pravého okraje */
table.report td.day-cell.last-day {
    border-right: none;
}

/* Lepící hlavička */
table.report thead th {
    position: sticky;
    top: 55px;
    z-index: 3;
    background: #f8f9fa;
}

/* Zachovat šedé zvýraznění víkendů/svátků i v hlavičce */
table.report thead th.col-off {
    background: #f0f1f2;
}

/* (volitelné) decentní spodní linka hlavičky */
table.report thead th {
    box-shadow: 0 1px 0 rgba(0,0,0,.06);
}
/* D přesně doprostřed, žádný padding/margin, buňka vyplněná celá */
td.day-cell {
    padding: 0px !important;
    margin: 0px !important;
    text-align: center;
    font-size: 9px;
    max-width: 65px; 
    margin: auto;
    white-space: nowrap;        /* NEZALAMOVAT */
    overflow: hidden;           /* SCHOVAT PŘETEKLÝ TEXT */
    text-overflow: ellipsis;    /* TŘI TEČKY (…) */
}
.vacation-approved,.vacation-unapproved{
    font-size: 17px;
    font-weight: 900;
    color:#0a0;
    line-height: 200%;
}
/* Ne/neschválená dovolená: modrá + pulzování písmene */
.vacation-unapproved {
  color: #78c8ff;
  display: inline-block;          /* aby šlo škálovat jen písmeno */
  animation: vacPulse 1.1s ease-in-out infinite;
  transform-origin: center;
}

@keyframes vacPulse {
  0%, 100% {
    transform: scale(1);
    text-shadow: none;
  }
  50% {
    transform: scale(1.28);
    text-shadow: 0 0 10px rgba(120, 200, 255, .75);
  }
}

/* accessibility: vypnout animace, pokud si to uživatel přeje */
@media (prefers-reduced-motion: reduce) {
  .vacation-unapproved { animation: none; }
}

.period-do .input-group-addon {
  background: none;
  border: none;
  box-shadow: none;
  padding: 0px;
  padding-right: 5px;
  padding-left: 5px;
  cursor: pointer;
  color: #337ab7;
  line-height: 0;
}
.open-datepicker i {
    cursor:pointer
}
/* žádné odlišení „dnes“ */
.datetimepicker td.day.today,
.datetimepicker span.month.today,
.datetimepicker span.year.today {
  background: transparent !important;
  color: inherit !important;
  text-shadow: none !important;
  box-shadow: none !important;
}