/* Additions on top of the legacy bootstrap 3 + sb-admin styles. */

.error-msg, .error { color: #a94442; }

/* User dropdown without bootstrap.js */
.cce-user-menu { position: relative; }
.cce-user-menu > summary { list-style: none; cursor: pointer; color: #999; padding: 15px; line-height: 20px; }
.cce-user-menu > summary::-webkit-details-marker { display: none; }
.cce-user-menu > summary:hover { color: #fff; }
.cce-user-menu[open] > .dropdown-menu { display: block; right: 0; left: auto; }
.cce-logout-form { margin: 0; }
.cce-logout-form .btn-link { color: #333; padding: 3px 20px; width: 100%; text-align: left; }
.cce-logout-form .btn-link:hover { text-decoration: none; background: #f5f5f5; }

/* Small screens: keep the side menu reachable without bootstrap collapse JS */
@media (max-width: 767px) {
    .navbar-ex1-collapse.in { display: block; }
}

.cce-pending { margin-top: 30px; }

#blazor-error-ui {
    background: lightyellow; bottom: 0; box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2);
    display: none; left: 0; padding: 0.6rem 1.25rem 0.7rem 1.25rem; position: fixed; width: 100%; z-index: 1000;
}
#blazor-error-ui .dismiss { cursor: pointer; position: absolute; right: 0.75rem; top: 0.5rem; }

/* From the inline <style> of views/admin/login.php */
.logo-block { position: absolute; left: 0; right: 0; margin: 0 auto; text-align: center; top: -70px; width: 167px; }
.logo-block img { max-width: 100%; }

/* Data grid (DataTables look-alike) */
.cce-grid-toolbar { margin-bottom: 8px; }
.cce-inline { display: inline-block; width: auto; margin: 0 4px; }
.cce-sortable { cursor: pointer; white-space: nowrap; }
.cce-pagination { margin: 0; }
.cce-actions a, .cce-actions button { margin-right: 6px; }
.cce-actions .btn-link { padding: 0; vertical-align: baseline; }
.cce-image-preview { max-width: 145px; max-height: 145px; display: block; margin-bottom: 6px; }
.cce-checklist-box { max-height: 260px; overflow-y: auto; border: 1px solid #ccc; padding: 6px 10px; border-radius: 4px; }
.cce-checklist-box label { display: block; font-weight: normal; margin: 2px 0; }
.cce-order-buttons .btn { padding: 0 6px; }
.cce-modal-backdrop { position: fixed; inset: 0; background: rgba(0,0,0,.45); z-index: 1040; }
.cce-modal { position: fixed; top: 5%; left: 50%; transform: translateX(-50%); width: 92%; max-width: 640px; max-height: 90%;
    overflow-y: auto; background: #fff; border-radius: 6px; z-index: 1050; padding: 15px 20px; box-shadow: 0 5px 15px rgba(0,0,0,.5); }

/* Rental Equipment (equipment/*.php) */
.cce-country-grid { display: flex; flex-direction: column; gap: 20px; max-width: 400px; margin: 40px auto; }
.cce-country-card { background: #fff; border: 2px solid #e0e0e0; border-radius: 4px; padding: 20px; display: flex; justify-content: space-between;
    align-items: center; box-shadow: 0 2px 4px rgba(0,0,0,.05); color: inherit; text-decoration: none; }
.cce-country-card:hover, .cce-country-card:focus { border-color: #C30936; background: #fff9fa; text-decoration: none; color: inherit; }
.cce-country-name { font-size: 16px; font-weight: bold; color: #1B1C20; }
.cce-country-view { font-size: 12px; color: #3498db; }
.dashboard-card { border-radius: 6px; color: #fff; padding: 18px 15px; margin-bottom: 20px; box-shadow: 0 2px 6px rgba(0,0,0,.18); min-height: 105px; overflow: hidden; display: block; }
.dashboard-card:hover, .dashboard-card:focus { color: #fff; text-decoration: none; opacity: .95; }
.dashboard-card i { font-size: 34px; opacity: .95; margin-top: 5px; }
.dashboard-card .count { font-size: 38px; font-weight: bold; line-height: 1; }
.dashboard-card .title { font-size: 15px; margin-top: 8px; line-height: 20px; }
.bg-blue { background: #1565d8; } .bg-green { background: #1b8b3c; } .bg-orange { background: #ef7b06; } .bg-purple { background: #6d3aa8; } .bg-red { background: #d81b60; }
.cce-stat-card { background: #fff; border-left: 4px solid #ccc; padding: 10px 14px; border-radius: 3px; box-shadow: 0 1px 3px rgba(0,0,0,.08); cursor: pointer; width: 100%; text-align: left; border-top: 0; border-right: 0; border-bottom: 0; }
.cce-stat-card.active { outline: 2px solid #C30936; }
.cce-stat-card h3 { margin: 0; font-weight: bold; }
.cce-stat-card small { font-size: 10px; font-weight: bold; color: #777; }
.cce-section-header { background: #1B1C20; color: #fff; padding: 10px 14px; margin-top: 18px; display: flex; justify-content: space-between; align-items: center; cursor: pointer; }
.cce-section-header .btn-link { color: #ff8a8a; }
.cce-equip-table td { vertical-align: middle !important; }
.cce-status-overdue { color: #E74C3C; font-size: 11px; font-weight: bold; }
.cce-status-due-soon { color: #b7950b; font-size: 11px; font-weight: bold; }
.cce-status-ok { color: #27AE60; font-size: 11px; font-weight: bold; }
.btn-brand-red { background: #C30936; color: #fff; border-color: #a5072d; }
.btn-brand-red:hover, .btn-brand-red:focus { background: #a5072d; color: #fff; }
.cce-email-tag { display: inline-block; background: #eef2f7; border-radius: 12px; padding: 3px 10px; margin: 0 6px 6px 0; }
.cce-email-tag .btn-link { padding: 0 0 0 6px; color: #C30936; }
.cce-picking-preview { max-height: 70vh; overflow: auto; }
