:root { --tblr-font-sans-serif: "Cairo", "Segoe UI", Tahoma, sans-serif; --tblr-primary: #0b2a52; --tblr-primary-rgb: 11, 42, 82; }
body { font-family: var(--tblr-font-sans-serif); }
.bg-navy { background: #0b2a52; }
.navbar-vertical.navbar-expand-lg { background: #0b2a52; }
.nav-ico { font-size: 1.15rem; margin-inline-end: .55rem; }
.nav-item-header { padding: .75rem 1rem .25rem; font-size: .7rem; letter-spacing: .1em; color: #8fa3c2; text-transform: uppercase; }
.navbar-vertical .nav-item.active > .nav-link { background: rgba(255,255,255,.08); border-inline-start: 3px solid #e11d3c; }
.card-link { text-decoration: none; color: inherit; }
.table th { white-space: nowrap; }
[dir="ltr"] { direction: ltr; }
.form-label.required::after { content: " *"; color: #d63939; }
.lang-tabs .nav-link { padding: .35rem .9rem; }
.img-thumb { width: 64px; height: 44px; object-fit: cover; border-radius: 4px; }
.sortable-ghost { opacity: .4; }
.drag-handle { cursor: grab; color: #adb5bd; }
.cursor-pointer { cursor: pointer; }
.tox-tinymce { border-radius: 4px !important; }
.navbar-brand img { height: 36px !important; width: auto; max-width: 160px; }
/* Permission-aware UI (server enforces; this only hides what the user cannot do) */
.no-edit .perm-edit, .no-edit .drag-handle, .no-edit form[method=post]:not([data-ro-allow]) .btn-primary,
.no-edit form[method=post]:not([data-ro-allow]) button[type=submit]:not(.text-danger):not(.dropdown-item) { display: none !important; }
.no-delete form[data-confirm] button.text-danger, .no-delete .perm-delete { display: none !important; }
.no-publish .perm-publish { display: none !important; }
.ro-banner { border-inline-start: 4px solid #f59f00; }
