/* e-recepcija - vlastiti stilovi (učitavaju se nakon AdminLTE 4) */

/* oznaka u sidebaru (dok nema pravog logotipa) */
.sidebar-brand .brand-link .brand-image.brand-icon { float: none; max-height: none; min-width: 33px; line-height: 1; display: inline-flex; align-items: center; justify-content: center; width: 33px; height: 33px;
    border-radius: 8px; background: var(--bs-primary); color: #fff; font-size: 18px; margin-right: .5rem; opacity: .95; }
.sidebar-brand .brand-text b { font-weight: 700; }

/* prijava / registracija */
.login-box.auth-box-wide { width: 820px; max-width: calc(100% - 2rem); }
.login-logo a { color: var(--bs-body-color); text-decoration: none; }

/* tablice u karticama */
.card-body.p-0 > .table th:first-child, .card-body.p-0 > .table td:first-child { padding-left: 1rem; }
.card-body.p-0 > .table th:last-child, .card-body.p-0 > .table td:last-child { padding-right: 1rem; }
.detail-view th { width: 40%; font-weight: 600; }

/* Kalendar zauzeća - svaki dan = dvije polovice (jutro / popodne) */
.cal-wrap { overflow-x: auto; }
.cal { table-layout: fixed; width: 100%; min-width: 900px; border-collapse: collapse; font-size: 12px;
       user-select: none; -webkit-user-select: none; }
.cal col.cal-col-name { width: 170px; }
.cal th, .cal td { padding: 0; border: 0; border-bottom: 1px solid #e9ecef; vertical-align: middle; }
.cal thead th { text-align: center; font-weight: 500; background: #f8f9fa; }
.cal tr.cal-months th { font-weight: 600; text-transform: capitalize; padding: 4px 0; border-left: 1px solid #dee2e6; }
.cal tr.cal-days th { padding: 3px 0; line-height: 1.2; border-left: 1px solid #dee2e6; }
.cal tr.cal-days th small { color: #6c757d; }
.cal th.cal-weekend { background: #eef0f3; }
.cal th.cal-today { background: #fff3cd; }
.cal .cal-name { text-align: left; padding: 0 8px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
                 background: #fff; position: sticky; left: 0; z-index: 2; border-right: 1px solid #dee2e6; }
.cal thead .cal-name { background: #f8f9fa; }
.cal .cal-name a { color: inherit; text-decoration: none; }
.cal .cal-name.virtual { padding-left: 22px; color: #6c757d; }
.cal tr.cal-group td { background: #f1f3f5; font-weight: 600; padding: 4px 8px; position: sticky; left: 0; }
.cal tr.cal-row td { height: 34px; }
/* granica dana je lijevo od jutarnje polovice; između polovica nema crte */
.cal td.cal-am { border-left: 1px solid #e9ecef; }
.cal td.cal-free { cursor: cell; }
.cal td.cal-free.cal-weekend { background: #f6f7f9; }
.cal td.cal-free.cal-hover { background: #e7f5ee; }
.cal td.cal-free.cal-sel { background: #a3d9b8; }
/* rezervacija: traka od popodneva dana dolaska do jutra dana odlaska */
.cal td.cal-term { padding: 4px 0; }
.cal .cal-bar { display: block; height: 26px; line-height: 26px; padding: 0 6px; color: #fff; background: #0d6efd;
                text-decoration: none; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; font-weight: 500; }
.cal .cal-bar:hover { filter: brightness(0.9); color: #fff; }
.cal td.cal-starts .cal-bar { margin-left: 2px; border-top-left-radius: 13px; border-bottom-left-radius: 13px; padding-left: 9px; }
.cal td.cal-ends .cal-bar { margin-right: 2px; border-top-right-radius: 13px; border-bottom-right-radius: 13px; }
.cal td.status-2 .cal-bar { background: #fd7e14; }
.cal td.status-1 .cal-bar { background: #6c757d; }
.cal td.cal-blocked { background: repeating-linear-gradient(45deg, #e9ecef, #e9ecef 3px, #fff 3px, #fff 7px); }
.cal-tip { position: fixed; z-index: 1000; background: #212529; color: #fff; font-size: 12px; padding: 4px 8px;
           border-radius: 4px; pointer-events: none; white-space: nowrap; box-shadow: 0 2px 6px rgba(0,0,0,.2); }
.cal-legend { display: inline-block; width: 22px; height: 10px; border-radius: 5px; vertical-align: middle; background: #0d6efd; }
.cal-legend.status-2 { background: #fd7e14; }
.cal-legend.status-1 { background: #6c757d; }
.cal-legend.cal-legend-blocked { border-radius: 0; background: repeating-linear-gradient(45deg, #ced4da, #ced4da 2px, #fff 2px, #fff 5px); }
