/* ── Global font ──────────────────────────────────────────── */
@font-face {
    font-family: 'Phetsarath_OT';
    src: url('/build/icons/Phetsarath OT_font.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}
* { font-family: 'Phetsarath_OT', sans-serif !important; }

/* ── Sidebar toggle — fold / unfold swap ──────────────────── */
.hamburger-icon .ri-menu-fold-line   { display: inline-block; }
.hamburger-icon .ri-menu-unfold-line { display: none; }
.hamburger-icon.open .ri-menu-fold-line   { display: none; }
.hamburger-icon.open .ri-menu-unfold-line { display: inline-block; }

/* ── Sidebar logo ─────────────────────────────────────────── */
.navbar-brand-box {
    padding-top: 16px !important;
    padding-bottom: 16px !important;
    height: auto !important;
}
.logo-lg img {
    height: 100px !important;
}
[data-sidebar-size="sm"] .sidebar-version-wrap { display: none !important; }

[data-sidebar-size="sm"] .navbar-brand-box {
    padding-top: 16px !important;
    padding-bottom: 16px !important;
    height: auto !important;
}
/* Override app.min.css .logo { line-height: 70px } */
.logo {
    line-height: normal !important;
}

/* ── Sidebar flex layout — makes #scrollbar fill remaining height ── */
.navbar-menu {
    display: flex !important;
    flex-direction: column !important;
    padding-bottom: 0 !important;
}
.navbar-menu #scrollbar {
    flex: 1 1 0 !important;
    min-height: 0 !important;
    height: auto !important; /* overrides Bootstrap h-100 (height:100%!important) */
}

/* ── Project view – file download list ───────────────────── */
.file-download-row:hover {
    background-color: rgba(0,0,0,.04) !important;
}
.file-download-row:hover a.btn-icon {
    color: var(--bs-primary) !important;
}

/* ── Project view – kanban tasks ─────────────────────────── */
.tasks-board {
    display: flex;
    gap: 14px;
    align-items: stretch;
    overflow-x: auto;
    padding-bottom: 16px;
}

.tasks-list {
    background: #f3f6f9;
    border-radius: 10px;
    min-width: 320px;
    max-width: 320px;
    overflow: hidden;
    padding: 0;
    margin: 0;
    flex-shrink: 0;
    display: flex;
    flex-direction: column;
}

.tasks-wrapper {
    flex: 1;
    padding: 10px 10px 60px;
    min-height: 120px;
}

.kanban-col-header {
    padding: 10px 14px;
    display: flex;
    align-items: center;
    gap: 8px;
    border-radius: 10px 10px 0 0;
    cursor: default;
}
.kanban-todo   { background-color: #405189; }
.kanban-inprog { background-color: #f7b84b; }
.kanban-review { background-color: #878a99; }
.kanban-done   { background-color: #0ab39c; }

.kanban-col-title {
    color: #fff;
    font-weight: 600;
    font-size: 15px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    flex-grow: 1;
}
.kanban-col-count {
    background: rgba(255,255,255,0.25);
    color: #fff;
    border-radius: 20px;
    padding: 1px 9px;
    font-size: 12px;
    font-weight: 700;
    min-width: 24px;
    text-align: center;
}

.tasks-box {
    border-radius: 8px;
    border: none !important;
    box-shadow: 0 1px 3px rgba(0,0,0,0.08) !important;
    margin-bottom: 10px;
    transition: box-shadow .15s, transform .15s;
    background: #fff !important;
}
.tasks-box:hover {
    box-shadow: 0 4px 14px rgba(0,0,0,0.12) !important;
    transform: translateY(-1px);
}
.ex-over {
    background-color: rgba(0,0,0,0.04) !important;
}
.tasks-box.ex-moved {
    background-color: #e9f7df !important;
}

/* Scope secondary background override to kanban member avatars only */
.tasks-box .avatar-title {
    background-color: var(--bs-secondary) !important;
}

/* Zoom only the page wrapper so elements appended directly to <body>
   (tooltips, popovers, modal backdrop) stay in unzoomed viewport space
   and Popper.js coordinates are not double-scaled. */
#layout-wrapper { zoom: 0.9; }

/* Prevent body from scrolling behind the modal */
body.modal-open {
    overflow: hidden !important;
}
#kanbanboard .tasks-list {
margin-right: 5px;

}

.tasks-board {
    gap: 0px!important;
}

/* ── Inline-editable fields (project & task views) ───────── */
.inline-editable {
    cursor: pointer;
    border-bottom: 1px dashed #adb5bd;
    transition: border-color .15s;
}
.inline-editable:hover {
    border-bottom-color: #405189;
}

.project-inline-edit-btn,
.task-inline-edit-btn {
    padding: 0;
    min-width: auto;
    line-height: 1;
}

/* ── Priority inline editor (choices.js) ─────────────────── */
#priority-editor .choices { margin-bottom: 0; }
#priority-editor .choices__inner { min-height: 28px; padding: 2px 24px 2px 8px; font-size: .8125rem; }
#priority-editor .choices__list--single { padding: 0; }
#priority-editor .choices[data-type*=select-one]::after { right: 8px; margin-top: -3px; }
#priority-editor .choices__list--dropdown .choices__item { padding: 6px 10px; font-size: .8125rem; }

/* ── Project view ────────────────────────────────────────── */
.card-header.border-0>.d-flex.align-items-center { min-height: 38px; }

#project-tab-content > .tab-pane:not(.active),
#tasksList > .tab-content > .tab-pane:not(.active) { display: none !important; }

body > .modal {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    z-index: 1055 !important;
    display: none;
    width: 100% !important;
    height: 100% !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    outline: 0 !important;
}
body > .modal.show { display: block !important; }

/* ── Disabled flatpickr inputs (view/show mode) ──────────── */
.flatpickr-input[readonly][disabled] {
    background-color: #f3f6f9 !important;
    cursor: default !important;
}

/* ── Task status badge colours (shared: List / Kanban / Gantt) ── */
.badge-st-todo    { background-color: #405189; color: #fff; }
.badge-st-inprog  { background-color: #f7b84b; color: #fff; }
.badge-st-review  { background-color: #878a99; color: #fff; }
.badge-st-done    { background-color: #0ab39c; color: #fff; }

/* ── Gantt popup — allow pointer events so links/buttons work ── */
.gantt .popup-wrapper { pointer-events: auto !important; }

/* ── Role-based UI: hide edit controls for Members ───────── */
body[data-can-manage="0"] .project-inline-edit-btn,
body[data-can-manage="0"] .task-inline-edit-btn { display: none !important; }

body[data-can-manage="0"] .inline-editable {
    cursor: default !important;
    border-bottom: none !important;
    pointer-events: none;
}