html {
  font-size: 14px;
}

@media (min-width: 768px) {
  html {
    font-size: 16px;
  }
}

html {
  position: relative;
  min-height: 100%;
}

body {
  margin-bottom: 60px;
}

.form-outline .form-control {
    min-height: auto;
    padding-top: .32rem;
    padding-bottom: .32rem;
    padding-left: .75rem;
    padding-right: .75rem;
    border: 0;
    background: rgba(0,0,0,0);
    transition: all .2s linear;
}

.form-outline .form-control ~ .form-label {
    position: absolute;
    top: 0;
    max-width: 90%;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    left: .75rem;
    padding-top: .37rem;
    pointer-events: none;
    transform-origin: 0 0;
    transition: all .2s ease-out;
    color: var(--mdb-form-control-label-color);
    margin-bottom: 0;
}

.cascading-right {
    margin-right: -50px;
}

@media (max-width: 991.98px) {
    .cascading-right {
        margin-right: 0;
    }
}

#btn-add-client.btn-floating,
#btn-add-project.btn-floating,
#btn-add-deliverable.btn-floating,
#btn-add-phase.btn-floating,
#btn-refresh-project.btn-floating,
#btn-refresh-deliverable.btn-floating,
#btn-refresh-phase.btn-floating,
#btn-refresh-client.btn-floating,
#btn-refresh-project-client.btn-floating,
#btn-refresh-deliverable-projects.btn-floating,
#btn-refresh-phase-deliverables.btn-floating {
    width: 1rem;
    height: 1rem;
    margin-bottom: 6px;
}

#btn-add-client.btn-floating .fas,
#btn-add-project.btn-floating .fas,
#btn-add-deliverable.btn-floating .fas,
#btn-add-phase.btn-floating .fas,
#btn-refresh-client.btn-floating .fas,
#btn-refresh-project.btn-floating .fas,
#btn-refresh-deliverable.btn-floating .fas,
#btn-refresh-phase.btn-floating .fas,
#btn-refresh-deliverable-projects.btn-floating .fas,
#btn-refresh-phase-deliverables.btn-floating .fas,
#btn-refresh-project-client.btn-floating .fas {
    width: 1rem;
    line-height: 1rem;
}

#span-refresh-client,
#span-refresh-project,
#span-refresh-deliverable,
#span-refresh-phase {
    margin-left: 5px;
}

#timer-container li:not(:last-child){
    margin-right: 5px;
}
header {
    height: 51px;
}
.navbar {
    padding-bottom: 0rem;
    height: 51px;
}

.navbar-nav .nav-item.btn-sm {
    padding: .15rem .1rem .15rem;
    font-size: .7rem;
}

#timer-container .badge {
    margin-top: 5px;
}
.navbar-light .navbar-nav .nav-link.active, .navbar-light .navbar-nav .show > .nav-link {
    color: #1266f1;
}
@media (min-width: 576px) {
    .navbar-expand-sm .navbar-nav .nav-link {
        padding-right: .5rem;
        padding-left: .5rem;
        padding-bottom: 5px;
        padding-top: 5px;
    }
}

/* Full cell background for date columns */
.date-cell-container {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    padding: 0.5rem 0.75rem; /* Match DataTables default cell padding */
}

/* Past due styling - full cell background + readable text */
.past-due-cell {
    background-color: #ffebee !important;
    color: #d32f2f !important; /* Dark red text for contrast */
}

.past-due-cell .row-text {
    color: #d32f2f !important;
    width: 100%;
}

th[title="Effort Now"],
th[title="Estimated Effort"] {
    width: 50px;
}

td input[data-field="EffortNow"].form-control,
td input[data-field="EffortPerDay"].form-control {
    width: 50px !important;
}

#timer-container .nav-link {
    padding: .5rem .1rem;
}

.hide-column{
    display: none;
}

#tasks-dt .btn-floating {
    width: 1.3125rem;
    height: 1.3125rem;
}

#tasks-dt .btn-floating .fas {
    width: 1rem;
    line-height: 1rem;
}

.row-input.form-check-input {
    width: none;
}

.modal-footer {
    border-top: none;
}

.btn-add-keyitem {

}

/* Make editing textarea resizable and visually match other form fields */
textarea#KeyItemDescription {
    resize: both; /* allow height + width changes */
    overflow: auto;
    min-height: 160px;
    min-width: 200px;
    box-sizing: border-box;
    border: 1px solid #ced4da; /* same border as Bootstrap form-control */
    border-radius: .25rem;
    padding: .375rem .75rem;
    font-family: inherit;
    font-size: 1rem;
}

/* When CKEditor replaces textarea it creates a div with class .ck-editor__editable.
               Apply form-control-like styles and allow visual resizing of the editor container. */
.ck-editor__editable.form-control {
    resize: both;
    overflow: auto;
    box-sizing: border-box;
    min-height: 160px;
    min-width: 200px;
    border: 1px solid #ced4da;
    border-radius: .25rem;
    padding: .375rem .75rem;
    font-family: inherit;
    font-size: 1rem;
}

/* style for the readonly description view (fallback if CKEditor not available) */
.description-view {
    min-height: 200px;
    border: 1px solid #ced4da;
    border-radius: .25rem;
    padding: .5rem;
    background-color: #fff;
    overflow: auto;
    box-sizing: border-box;
    font-family: inherit;
    font-size: 1rem;
}

.ck-editor__main {
    height: 100%;
}

.ck-editor__editable_inline {
    min-height: 200px
}