﻿/* Please see documentation at https://docs.microsoft.com/aspnet/core/client-side/bundling-and-minification
for details on configuring this project to bundle and minify static web assets. */

/* ═══════════════════════════════════════════════════════════════
   THE BAR — Global Dark Theme
   Matches login page palette: dark brown / whiskey amber / warm cream
   ═══════════════════════════════════════════════════════════════ */

/* ─── CSS Custom Properties ───────────────────────────────────── */
:root {
    --bar-bg:            #0d0805;
    --bar-bg-card:       #160f07;
    --bar-bg-elevated:   #1e1208;
    --bar-bg-hover:      #251a09;
    --bar-bg-active:     #2e2010;

    --bar-gold:          #d4a843;
    --bar-gold-dark:     #c8921a;
    --bar-gold-deeper:   #b8780f;
    --bar-gold-dim:      rgba(212, 168, 67, 0.22);
    --bar-gold-faint:    rgba(212, 168, 67, 0.08);
    --bar-gold-focus:    rgba(212, 168, 67, 0.60);
    --bar-gold-glow:     rgba(212, 168, 67, 0.15);

    --bar-text:          #f0ddb0;
    --bar-text-muted:    rgba(240, 221, 176, 0.60);
    --bar-text-dim:      rgba(240, 221, 176, 0.35);
    --bar-text-faint:    rgba(240, 221, 176, 0.20);

    --bar-border:        rgba(212, 168, 67, 0.18);
    --bar-border-strong: rgba(212, 168, 67, 0.30);
    --bar-border-subtle: rgba(212, 168, 67, 0.08);

    --bar-error:         #e07050;
    --bar-error-dim:     rgba(224, 112, 80, 0.18);
    --bar-success:       #6aaa7c;
    --bar-success-dim:   rgba(106, 170, 124, 0.18);
    --bar-warning:       #c8921a;
    --bar-warning-dim:   rgba(200, 146, 26, 0.18);

    --bar-radius:        10px;
    --bar-radius-lg:     14px;
    --bar-shadow:        0 4px 24px rgba(0, 0, 0, 0.55);
    --bar-shadow-lg:     0 12px 48px rgba(0, 0, 0, 0.70);

    --bar-font:          'Inter', 'Segoe UI', 'Helvetica Neue', Arial, sans-serif;
}

/* ─── Global Base ─────────────────────────────────────────────── */
*, *::before, *::after { box-sizing: border-box; }

html {
    font-size: 14px;
    min-height: 100%;
    background: var(--bar-bg) !important;
    color: var(--bar-text);
}

@media (min-width: 768px) { html { font-size: 15px; } }

body,
body.k-content {
    font-family: var(--bar-font) !important;
    font-weight: 400;
    font-size: 14px;
    color: var(--bar-text) !important;
    background: var(--bar-bg) !important;
    background-color: var(--bar-bg) !important;
    margin: 0;
}

a {
    color: var(--bar-gold);
    text-decoration: none;
}
a:hover { color: #e8c060; text-decoration: underline; }

/* ─── Scrollbar ───────────────────────────────────────────────── */
::-webkit-scrollbar { width: 6px; height: 6px; }
::-webkit-scrollbar-track { background: var(--bar-bg); }
::-webkit-scrollbar-thumb { background: var(--bar-gold-dim); border-radius: 3px; }
::-webkit-scrollbar-thumb:hover { background: rgba(212, 168, 67, 0.40); }

/* ─── Bootstrap Overrides ─────────────────────────────────────── */
.btn-primary {
    background: linear-gradient(135deg, var(--bar-gold-dark) 0%, var(--bar-gold) 60%, var(--bar-gold-deeper) 100%);
    border-color: var(--bar-gold-dark);
    color: var(--bar-bg) !important;
    font-weight: 700;
    letter-spacing: .05em;
}
.btn-primary:hover, .btn-primary:focus {
    background: linear-gradient(135deg, #d9a030 0%, #e8c060 60%, #c8921a 100%);
    border-color: var(--bar-gold);
    color: var(--bar-bg) !important;
    box-shadow: 0 4px 16px rgba(212, 168, 67, 0.35);
}

.btn-outline-secondary {
    color: var(--bar-text-muted);
    border-color: var(--bar-border);
    background: transparent;
}
.btn-outline-secondary:hover {
    background: var(--bar-gold-faint);
    color: var(--bar-gold);
    border-color: var(--bar-gold-dim);
}

.border-top    { border-top:    1px solid var(--bar-border) !important; }
.border-bottom { border-bottom: 1px solid var(--bar-border) !important; }

.nav-pills .nav-link.active,
.nav-pills .show > .nav-link {
    background: var(--bar-gold);
    color: var(--bar-bg) !important;
    font-weight: 700;
}

/* ─── Kendo Base ──────────────────────────────────────────────── */
.k-content,
.k-widget,
.k-block {
    background-color: var(--bar-bg) !important;
    color: var(--bar-text) !important;
}

/* ─── Kendo Grid ──────────────────────────────────────────────── */
.k-grid {
    background: var(--bar-bg-card) !important;
    border: 1px solid var(--bar-border) !important;
    border-radius: var(--bar-radius-lg) !important;
    overflow: hidden;
    color: var(--bar-text) !important;
}

.k-grid-header,
.k-grid-header .k-header {
    background: var(--bar-bg-elevated) !important;
    border-bottom: 1px solid var(--bar-border-strong) !important;
    color: var(--bar-gold) !important;
    font-weight: 700 !important;
    font-size: 11px !important;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.k-grid-header th.k-header {
    background: var(--bar-bg-elevated) !important;
    color: var(--bar-gold) !important;
    font-weight: 700 !important;
    border-right: 1px solid var(--bar-border) !important;
}

.k-grid-content,
.k-grid-content-locked {
    background: var(--bar-bg-card) !important;
}

.k-grid td,
.k-grid-content td[role="gridcell"] {
    background: transparent !important;
    color: var(--bar-text) !important;
    border-bottom: 1px solid var(--bar-border-subtle) !important;
    border-right: 1px solid var(--bar-border-subtle) !important;
    cursor: pointer;
}

.k-grid tr:hover td,
.k-grid tbody tr:hover td {
    background: var(--bar-bg-hover) !important;
    color: var(--bar-text) !important;
}

.k-grid tr.k-alt td {
    background: rgba(212, 168, 67, 0.03) !important;
}

.k-grid tr.k-selected td,
.k-grid tr.k-state-selected td {
    background: var(--bar-gold-faint) !important;
    color: var(--bar-text) !important;
}

.k-grid-toolbar {
    background: var(--bar-bg-elevated) !important;
    border-bottom: 1px solid var(--bar-border) !important;
    padding: 8px 12px !important;
}

.k-grid-pager,
.k-pager {
    background: var(--bar-bg-elevated) !important;
    border-top: 1px solid var(--bar-border) !important;
    color: var(--bar-text-muted) !important;
}

.k-pager-numbers .k-button,
.k-pager .k-button {
    background: transparent !important;
    color: var(--bar-text-muted) !important;
    border-color: var(--bar-border) !important;
}
.k-pager-numbers .k-button.k-selected,
.k-pager .k-button.k-selected {
    background: var(--bar-gold) !important;
    color: var(--bar-bg) !important;
    border-color: var(--bar-gold) !important;
    font-weight: 700;
}

.k-grid-toolbar .k-searchbox {
    width: 300px !important;
    background: rgba(180, 110, 20, 0.08) !important;
    border-color: var(--bar-border) !important;
}

/* ─── Kendo Toolbar ───────────────────────────────────────────── */
.k-toolbar {
    background: var(--bar-bg-elevated) !important;
    border-color: var(--bar-border) !important;
}

/* ─── Kendo Inputs & Pickers ──────────────────────────────────── */
.k-input,
.k-picker,
.k-combobox,
.k-dropdownlist,
.k-multiselect,
.k-numerictextbox,
.k-datepicker,
.k-datetimepicker,
.k-timepicker,
.k-textbox,
.k-textarea,
.k-input-solid,
.k-picker-solid {
    background: rgba(180, 110, 20, 0.06) !important;
    border-color: var(--bar-border) !important;
    color: var(--bar-text) !important;
    border-radius: var(--bar-radius) !important;
}

.k-input:focus-within,
.k-picker:focus-within,
.k-input.k-focus,
.k-picker.k-focus,
.k-input-solid:focus-within,
.k-picker-solid:focus-within {
    border-color: var(--bar-gold-focus) !important;
    background: rgba(212, 168, 67, 0.07) !important;
    box-shadow: 0 0 0 3px var(--bar-gold-glow) !important;
}

.k-input-inner,
.k-input-value-text {
    color: var(--bar-text) !important;
    background: transparent !important;
}

.k-input-inner::placeholder { color: var(--bar-text-dim) !important; }

.k-input-button,
.k-picker .k-button,
.k-input .k-button {
    background: transparent !important;
    border-color: var(--bar-border) !important;
    color: rgba(212, 168, 67, 0.50) !important;
}
.k-input-button:hover,
.k-picker .k-button:hover {
    background: var(--bar-gold-faint) !important;
    color: var(--bar-gold) !important;
}

/* ─── Kendo Dropdown / List ───────────────────────────────────── */
.k-list-container,
.k-popup,
.k-animation-container > .k-popup,
.k-dropdownlist-popup,
.k-combobox-popup,
.k-multiselect-popup {
    background: var(--bar-bg-elevated) !important;
    border: 1px solid var(--bar-border-strong) !important;
    border-radius: var(--bar-radius) !important;
    box-shadow: var(--bar-shadow-lg) !important;
}

/* Inner wrappers added in Kendo UI 2024/2025 */
.k-popup .k-list-wrap,
.k-popup .k-table-wrap,
.k-popup .k-virtual-wrap,
.k-popup .k-virtual-content,
.k-popup .k-list-scroller,
.k-popup .k-table,
.k-popup .k-nodata {
    background: var(--bar-bg-elevated) !important;
    color: var(--bar-text) !important;
}

/* Filter / search input at the top of the popup */
.k-popup .k-searchbox,
.k-popup .k-filter-wrap {
    background: var(--bar-bg) !important;
    border-bottom: 1px solid var(--bar-border) !important;
}

/* Option label (placeholder "Select …" row) */
.k-popup .k-list-optionlabel {
    background: transparent !important;
    color: var(--bar-text-dim) !important;
}

/* Group sticky headers */
.k-popup .k-list-group-sticky-header,
.k-popup .k-list-group-label {
    background: var(--bar-bg) !important;
    color: var(--bar-gold) !important;
    border-bottom: 1px solid var(--bar-border-subtle) !important;
    font-size: 10px;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.k-list .k-item,
.k-list-item {
    color: var(--bar-text) !important;
    background: transparent !important;
}

.k-list .k-item:hover,
.k-list-item:hover,
.k-list-item.k-hover {
    background: var(--bar-bg-hover) !important;
    color: var(--bar-gold) !important;
}

.k-list .k-item.k-selected,
.k-list-item.k-selected {
    background: var(--bar-gold-faint) !important;
    color: var(--bar-gold) !important;
}

/* ─── Kendo Buttons ───────────────────────────────────────────── */
.k-button {
    font-family: var(--bar-font) !important;
    border-radius: var(--bar-radius) !important;
}

.k-button-solid-primary,
.k-button-solid.k-button-solid-primary {
    background: linear-gradient(135deg, var(--bar-gold-dark) 0%, var(--bar-gold) 50%, var(--bar-gold-deeper) 100%) !important;
    border-color: var(--bar-gold-dark) !important;
    color: var(--bar-bg) !important;
    font-weight: 700 !important;
    box-shadow: 0 2px 12px rgba(212, 168, 67, 0.25) !important;
}
.k-button-solid-primary:hover {
    filter: brightness(1.08) !important;
    box-shadow: 0 4px 20px rgba(212, 168, 67, 0.40) !important;
}

.k-button-solid-base,
.k-button-solid.k-button-solid-base {
    background: var(--bar-bg-elevated) !important;
    border-color: var(--bar-border) !important;
    color: var(--bar-text) !important;
}
.k-button-solid-base:hover {
    background: var(--bar-bg-hover) !important;
    border-color: var(--bar-border-strong) !important;
}

.k-button-flat,
.k-button-flat-primary {
    color: var(--bar-gold) !important;
    background: transparent !important;
}
.k-button-flat:hover { background: var(--bar-gold-faint) !important; }

/* ─── Kendo Window / Dialog ───────────────────────────────────── */
.k-window,
.k-dialog {
    background: var(--bar-bg-card) !important;
    border: 1px solid var(--bar-border-strong) !important;
    border-radius: var(--bar-radius-lg) !important;
    box-shadow: var(--bar-shadow-lg),
                0 0 0 1px var(--bar-border-subtle) !important;
    overflow: hidden;
    color: var(--bar-text) !important;
}

.k-window-titlebar,
.k-dialog-titlebar {
    background: linear-gradient(90deg, rgba(212, 168, 67, 0.12), rgba(212, 168, 67, 0.04)) !important;
    border-bottom: 1px solid var(--bar-border) !important;
    color: var(--bar-gold) !important;
    padding: 14px 18px !important;
}

.k-window-title,
.k-dialog-title {
    color: var(--bar-gold) !important;
    font-weight: 700 !important;
    font-size: 13px !important;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.k-window-content,
.k-dialog-content {
    background: var(--bar-bg-card) !important;
    color: var(--bar-text) !important;
}

.k-window-actions .k-button,
.k-dialog-actions .k-button,
.k-window-titlebar .k-button {
    color: var(--bar-text-muted) !important;
    background: transparent !important;
    border: none !important;
}
.k-window-actions .k-button:hover,
.k-window-titlebar .k-button:hover {
    color: var(--bar-gold) !important;
    background: var(--bar-gold-faint) !important;
}

.k-window {
    border-radius: var(--bar-radius-lg) !important;
    overflow: hidden !important;
}
.k-window-title { font-weight: bold !important; }

/* ─── Kendo Form ──────────────────────────────────────────────── */
.k-form,
.k-form-inline {
    background: transparent !important;
    color: var(--bar-text) !important;
    font-family: var(--bar-font) !important;
}

.k-form-field,
.k-form-group {
    color: var(--bar-text) !important;
}

.k-form-label,
.k-label,
label {
    color: var(--bar-text-muted) !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.k-form-legend {
    color: var(--bar-gold) !important;
    font-weight: 700 !important;
    font-size: 11px !important;
    letter-spacing: .12em;
    text-transform: uppercase;
    border-bottom: 1px solid var(--bar-border) !important;
    padding-bottom: 6px !important;
}

.k-form-hint,
.k-form-error {
    font-size: 11px !important;
}

.k-form-error { color: var(--bar-error) !important; }

/* ─── Kendo Tabs / TabStrip ───────────────────────────────────── */
.k-tabstrip,
.k-tabstrip-items-wrapper {
    background: transparent !important;
    border-color: var(--bar-border) !important;
}

.k-tabstrip-items .k-item {
    background: var(--bar-bg-elevated) !important;
    border-color: var(--bar-border) !important;
    color: var(--bar-text-muted) !important;
}

.k-tabstrip-items .k-item:hover {
    background: var(--bar-bg-hover) !important;
    color: var(--bar-gold) !important;
}

.k-tabstrip-items .k-item.k-active,
.k-tabstrip-items .k-item.k-selected {
    background: var(--bar-gold-faint) !important;
    border-bottom-color: var(--bar-bg-card) !important;
    color: var(--bar-gold) !important;
    font-weight: 600;
}

.k-tabstrip-content,
.k-tabstrip > .k-content {
    background: var(--bar-bg-card) !important;
    border-color: var(--bar-border) !important;
    color: var(--bar-text) !important;
}

/* ─── Kendo Drawer ────────────────────────────────────────────── */
.k-drawer,
.k-drawer-container,
.k-drawer-content {
    background: var(--bar-bg) !important;
    color: var(--bar-text) !important;
}

.k-drawer-item {
    color: var(--bar-text-muted) !important;
    border-radius: var(--bar-radius) !important;
}

.k-drawer-item:hover {
    background: var(--bar-bg-hover) !important;
    color: var(--bar-gold) !important;
}

.k-drawer-item.k-selected,
.k-drawer-item.k-state-selected {
    background: var(--bar-gold-faint) !important;
    color: var(--bar-gold) !important;
    border-left: 3px solid var(--bar-gold) !important;
}

/* ─── Kendo AppBar / Toolbar ──────────────────────────────────── */
.k-appbar {
    background: var(--bar-bg-elevated) !important;
    border-bottom: 1px solid var(--bar-border) !important;
    color: var(--bar-text) !important;
    box-shadow: 0 2px 16px rgba(0,0,0,0.40) !important;
}

/* ─── Kendo Notification ──────────────────────────────────────── */
.k-notification-group,
.k-notification-container {
    z-index: 99999;
}

.k-notification {
    background: var(--bar-bg-elevated) !important;
    border: 1px solid var(--bar-border) !important;
    border-radius: var(--bar-radius) !important;
    color: var(--bar-text) !important;
    box-shadow: var(--bar-shadow) !important;
}

.k-notification-success,
.k-notification.k-notification-success {
    background: var(--bar-bg-elevated) !important;
    border-left: 3px solid var(--bar-success) !important;
    color: var(--bar-text) !important;
}

.k-notification-error,
.k-notification.k-notification-error {
    background: var(--bar-bg-elevated) !important;
    border-left: 3px solid var(--bar-error) !important;
    color: var(--bar-text) !important;
}

.k-notification h3 {
    padding: 20px 10px 5px;
    font-size: 1.1em;
    line-height: normal;
    color: var(--bar-text);
}

.k-notification img { margin: 10px; float: left; }

.notification-success,
.notification-error { width: 300px; height: auto; }

/* ─── Kendo Badge ─────────────────────────────────────────────── */
.k-badge {
    font-family: var(--bar-font) !important;
    letter-spacing: .04em;
    font-size: 11px !important;
    padding-block: 0.25rem !important;
    padding-inline: 0.75em !important;
}

.k-badge-solid-success {
    background: var(--bar-success-dim) !important;
    color: var(--bar-success) !important;
    border: 1px solid rgba(106, 170, 124, 0.30) !important;
    letter-spacing: 1px;
    word-spacing: 1px;
}

.k-badge-solid-warning {
    background: var(--bar-warning-dim) !important;
    color: #e8b040 !important;
    border: 1px solid rgba(200, 146, 26, 0.30) !important;
    letter-spacing: 1px;
    word-spacing: 1px;
}

.k-badge-solid-error {
    background: var(--bar-error-dim) !important;
    color: var(--bar-error) !important;
    border: 1px solid rgba(224, 112, 80, 0.30) !important;
    letter-spacing: 1px;
    word-spacing: 1px;
}

.k-badge-inline {
    font-family: var(--bar-font) !important;
}

/* ─── Kendo FAB ───────────────────────────────────────────────── */
.k-fab {
    background: linear-gradient(135deg, var(--bar-gold-dark), var(--bar-gold)) !important;
    border-color: var(--bar-gold-dark) !important;
    color: var(--bar-bg) !important;
    box-shadow: 0 4px 20px rgba(212, 168, 67, 0.35) !important;
}

.k-fab:hover {
    filter: brightness(1.1) !important;
    box-shadow: 0 8px 28px rgba(212, 168, 67, 0.50) !important;
}

.k-fab-text { display: none; }

/* ─── Kendo Messagebox ────────────────────────────────────────── */
.k-messagebox {
    border-radius: var(--bar-radius) !important;
    font-size: 13px !important;
}

.k-messagebox-danger {
    background: var(--bar-error-dim) !important;
    border: 1px solid rgba(224, 112, 80, 0.30) !important;
    color: var(--bar-error) !important;
}

.k-messagebox-success {
    background: var(--bar-success-dim) !important;
    border: 1px solid rgba(106, 170, 124, 0.30) !important;
    color: var(--bar-success) !important;
}

/* ─── Kendo Splitter / Panel ──────────────────────────────────── */
.k-splitter,
.k-panelbar {
    background: var(--bar-bg) !important;
    border-color: var(--bar-border) !important;
    color: var(--bar-text) !important;
}

/* ─── Kendo Date cell helper ──────────────────────────────────── */
.k-grid .date-cell {
    white-space: normal;
    line-height: 1.0;
    padding: 12px;
}

.k-grid .date-cell .dt-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 8px;
}

.k-grid .date-cell .dt-l {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-weight: 600;
    color: var(--bar-text-muted);
}

.k-grid .date-cell .dt-v {
    font-variant-numeric: tabular-nums;
}

.k-grid .date-cell .k-icon { font-size: 12px; }

/* ─── App-specific ────────────────────────────────────────────── */
.grid-container { }
.trans-grid-container { min-height: 250px; }

/* field label in modal forms */
.field-label {
    width: 100px;
    color: var(--bar-text-muted);
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .08em;
}

.modal-label { width: 400px; }
.modal-label label {
    font-size: 12px !important;
    font-weight: bold !important;
    color: var(--bar-text-muted) !important;
}

.signout-link {
    font-weight: 700;
    color: var(--bar-gold) !important;
}
.signout-link:hover { color: #e8c060 !important; }

.delete-icon {
    color: var(--bar-error) !important;
    font-weight: bold;
}

.balance-text {
    color: var(--bar-error);
    font-weight: 600;
}

.grid-date-col {
    font-size: 11px !important;
    font-weight: 500 !important;
    color: var(--bar-text-muted) !important;
}

/* sidebar */
#name {
    font-weight: bold;
    font-size: 14px;
    color: var(--bar-text);
}

/* ─── Kendo Calendar / DatePicker popup ───────────────────────── */
.k-calendar,
.k-calendar-wrap {
    background: var(--bar-bg-elevated) !important;
    border: 1px solid var(--bar-border-strong) !important;
    border-radius: var(--bar-radius) !important;
    color: var(--bar-text) !important;
    box-shadow: var(--bar-shadow-lg) !important;
}

.k-calendar-view {
    background: transparent !important;
    color: var(--bar-text) !important;
}

/* Header: month/year title + prev/next arrows */
.k-calendar-header,
.k-calendar .k-calendar-header {
    background: var(--bar-bg) !important;
    border-bottom: 1px solid var(--bar-border) !important;
    color: var(--bar-text) !important;
    border-radius: var(--bar-radius) var(--bar-radius) 0 0 !important;
}

.k-calendar-header .k-title,
.k-calendar-header .k-calendar-title {
    color: var(--bar-gold) !important;
    font-weight: 700 !important;
    background: transparent !important;
}
.k-calendar-header .k-title:hover,
.k-calendar-header .k-calendar-title:hover {
    background: var(--bar-gold-faint) !important;
    color: var(--bar-gold) !important;
}

.k-calendar-header .k-nav-prev,
.k-calendar-header .k-nav-next,
.k-calendar-header .k-nav-fast,
.k-calendar .k-prev-view,
.k-calendar .k-next-view {
    color: var(--bar-text-muted) !important;
    background: transparent !important;
    border-color: transparent !important;
}
.k-calendar-header .k-nav-prev:hover,
.k-calendar-header .k-nav-next:hover,
.k-calendar .k-prev-view:hover,
.k-calendar .k-next-view:hover {
    color: var(--bar-gold) !important;
    background: var(--bar-gold-faint) !important;
}

/* Week day header row (Mon, Tue, …) */
.k-calendar-table .k-calendar-th,
.k-calendar th {
    color: var(--bar-gold) !important;
    background: transparent !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: .06em !important;
    opacity: .7 !important;
}

/* Day cells */
.k-calendar-table,
.k-calendar table {
    background: transparent !important;
}

.k-calendar-td,
.k-calendar td {
    background: transparent !important;
    color: var(--bar-text) !important;
    border-color: transparent !important;
}

.k-calendar-td .k-calendar-cell-inner,
.k-calendar-td .k-link,
.k-calendar td .k-link {
    color: var(--bar-text) !important;
    background: transparent !important;
    border-radius: 50% !important;
}

/* Hover */
.k-calendar-td:hover .k-calendar-cell-inner,
.k-calendar-td:hover .k-link,
.k-calendar td:hover .k-link {
    background: var(--bar-bg-hover) !important;
    color: var(--bar-gold) !important;
}

/* Today */
.k-calendar-td.k-today .k-calendar-cell-inner,
.k-calendar-td.k-today .k-link,
.k-calendar td.k-today .k-link {
    border: 1px solid var(--bar-gold) !important;
    color: var(--bar-gold) !important;
    background: var(--bar-gold-faint) !important;
    font-weight: 700 !important;
}

/* Selected */
.k-calendar-td.k-selected .k-calendar-cell-inner,
.k-calendar-td.k-selected .k-link,
.k-calendar td.k-selected .k-link,
.k-calendar-td.k-state-selected .k-link {
    background: var(--bar-gold) !important;
    color: #160f07 !important;
    font-weight: 700 !important;
    border-color: var(--bar-gold) !important;
}

/* Other-month days */
.k-calendar-td.k-other-month .k-calendar-cell-inner,
.k-calendar-td.k-other-month .k-link {
    color: var(--bar-text-dim) !important;
}

/* Footer "Today" button row */
.k-calendar .k-footer,
.k-calendar-footer {
    background: var(--bar-bg) !important;
    border-top: 1px solid var(--bar-border) !important;
}
.k-calendar .k-footer .k-nav-today,
.k-calendar-footer .k-nav-today {
    color: var(--bar-gold) !important;
    background: transparent !important;
    font-weight: 600 !important;
}
.k-calendar .k-footer .k-nav-today:hover,
.k-calendar-footer .k-nav-today:hover {
    background: var(--bar-gold-faint) !important;
}

/* Decade / century navigation sidebar */
.k-calendar-navigation,
.k-calendar .k-calendar-navigation {
    background: var(--bar-bg) !important;
    border-right: 1px solid var(--bar-border) !important;
    color: var(--bar-text-muted) !important;
}
.k-calendar-navigation li:hover,
.k-calendar-navigation .k-item:hover {
    background: var(--bar-bg-hover) !important;
    color: var(--bar-gold) !important;
}

/* ─── Kendo Grid footer (global) ───────────────────────────────── */
.k-grid-footer,
.k-grid tfoot,
.k-grid .k-footer-row {
    background: var(--bar-bg-elevated) !important;
    border-top: 2px solid var(--bar-border-strong) !important;
    color: var(--bar-text) !important;
}

.k-grid-footer td,
.k-grid tfoot td,
.k-grid .k-footer-row td,
.k-grid td.k-footer-template {
    background: var(--bar-bg-elevated) !important;
    color: var(--bar-text) !important;
    border-color: var(--bar-border-subtle) !important;
}