/* /Components/Features/Accounting/InvoiceForm/InvoiceForm.razor.rz.scp.css */
.invoice-form[b-g7c1grbey7] { display: flex; flex-direction: column; gap: 1rem; }

.invoice-form__bar[b-g7c1grbey7] {
    display: flex; justify-content: space-between; align-items: center; gap: 1rem; flex-wrap: wrap;
    padding-bottom: 0.75rem; border-bottom: 1px solid var(--adv-border);
}

.invoice-form__save-state[b-g7c1grbey7] { display: inline-flex; align-items: center; gap: 0.25rem; font-size: 0.8rem; color: var(--rz-text-secondary-color); min-width: 5rem; }

.invoice-form__title[b-g7c1grbey7] { display: flex; flex-direction: column; gap: 0.125rem; }

.invoice-form__header[b-g7c1grbey7] { padding: 0.5rem 0; }
.invoice-form__field[b-g7c1grbey7] { display: grid; grid-template-columns: 9rem 1fr; align-items: center; gap: 0.5rem 1rem; padding: 0.3rem 0; border-bottom: 1px dotted var(--adv-border); }
.invoice-form__field > label[b-g7c1grbey7] { font-size: 0.8rem; color: var(--rz-text-secondary-color); }
.invoice-form__value[b-g7c1grbey7] { font-weight: 600; }
.invoice-form__field[b-g7c1grbey7]  .rz-datepicker, .invoice-form__field[b-g7c1grbey7]  .rz-textbox { width: 100%; }

.invoice-lines-grid[b-g7c1grbey7]  tr[draggable="true"] { cursor: grab; }
.invoice-lines-grid__handle[b-g7c1grbey7] { color: var(--rz-text-tertiary-color); vertical-align: middle; }
.invoice-lines-grid[b-g7c1grbey7]  .invoice-line--note td { font-style: italic; color: var(--rz-text-secondary-color); background: var(--rz-base-100); }
.invoice-line__note[b-g7c1grbey7] { font-style: italic; }

.invoice-form__line-links[b-g7c1grbey7] { display: flex; gap: 1.25rem; padding: 0.5rem 0.25rem; font-size: 0.9rem; }

.invoice-form__totals[b-g7c1grbey7] { display: grid; grid-template-columns: 1fr auto; gap: 0.35rem 2rem; margin: 0; max-width: 24rem; margin-left: auto; }
.invoice-form__totals dt[b-g7c1grbey7] { color: var(--rz-text-secondary-color); }
.invoice-form__totals dd[b-g7c1grbey7] { margin: 0; text-align: right; font-variant-numeric: tabular-nums; font-weight: 600; }
.invoice-form__totals-total[b-g7c1grbey7] { border-top: 1px solid var(--adv-border); padding-top: 0.35rem; font-size: 1.1rem; font-weight: 700 !important; color: inherit !important; }

/* Ribbon (Odoo statusbar): chevron steps */
.invoice-form__bar[b-g7c1grbey7]  .invoice-ribbon { display: inline-flex; list-style: none; margin: 0; padding: 0; }
.invoice-form__bar[b-g7c1grbey7]  .invoice-ribbon__step { position: relative; padding: 0.3rem 1.25rem 0.3rem 1.5rem; font-size: 0.8rem; font-weight: 600; background: var(--rz-base-200); color: var(--rz-text-secondary-color); clip-path: polygon(0 0, calc(100% - 0.75rem) 0, 100% 50%, calc(100% - 0.75rem) 100%, 0 100%, 0.75rem 50%); margin-left: -0.5rem; }
.invoice-form__bar[b-g7c1grbey7]  .invoice-ribbon__step:first-child { clip-path: polygon(0 0, calc(100% - 0.75rem) 0, 100% 50%, calc(100% - 0.75rem) 100%, 0 100%); margin-left: 0; }
.invoice-form__bar[b-g7c1grbey7]  .invoice-ribbon__step--done { background: var(--rz-base-300); color: var(--rz-text-color); }
.invoice-form__bar[b-g7c1grbey7]  .invoice-ribbon__step--active { background: var(--adv-primary); color: #fff; }

@media (max-width: 768px) {
    .invoice-form__field[b-g7c1grbey7] { grid-template-columns: 1fr; }
    .invoice-form__totals[b-g7c1grbey7] { margin-left: 0; max-width: none; }
}
/* /Components/Features/Calendar/CalendarCommandBar.razor.rz.scp.css */
.calendar-command-bar[b-dy5d7e66b6] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem 1rem;
    padding: 0.25rem 0 0.75rem;
}

.calendar-command-group[b-dy5d7e66b6] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.5rem;
    min-width: 0;
}

.calendar-command-nav[b-dy5d7e66b6] {
    display: inline-flex;
    align-items: center;
}

.calendar-command-week[b-dy5d7e66b6] {
    margin-inline-start: 0.6rem;
    font-size: 0.85rem;
    font-weight: 400;
    color: var(--rz-text-secondary-color);
}

.calendar-command-title[b-dy5d7e66b6] {
    margin: 0;
    font-size: 1.1rem;
    font-weight: 600;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.calendar-view-switch[b-dy5d7e66b6] {
    display: inline-flex;
}

.calendar-view-switch[b-dy5d7e66b6]  .rz-button {
    border-radius: 0;
}

.calendar-view-switch[b-dy5d7e66b6]  .rz-button:first-child {
    border-radius: 4px 0 0 4px;
}

.calendar-view-switch[b-dy5d7e66b6]  .rz-button:last-child {
    border-radius: 0 4px 4px 0;
}

/* A phone: the title on its own line, the views as compact as they get (SWEEP-283, 292). */
@media (max-width: 600px) {
    .calendar-command-group[b-dy5d7e66b6] {
        width: 100%;
    }

    .calendar-command-title[b-dy5d7e66b6] {
        flex-basis: 100%;
        white-space: normal;
    }

    .calendar-view-switch[b-dy5d7e66b6] {
        flex: 1;
    }

    .calendar-view-switch[b-dy5d7e66b6]  .rz-button {
        flex: 1;
        padding-left: 0.25rem;
        padding-right: 0.25rem;
    }
}
/* /Components/Features/Calendar/CalendarDayDetail.razor.rz.scp.css */
/* The day beside the grid (#2037, B5.9; CALEND-15): its own look, in theme tokens. */

/* A card like the quick view's (frosted like the app's panels), so the day reads as a panel that can be closed. */
.calendar-day-panel[b-i5ooh5x8i6] {
    padding: 0.75rem 1rem 1rem;
    border: 1px solid var(--adv-glass-border);
    border-radius: 10px;
    background: var(--adv-surface-glass-strong);
    -webkit-backdrop-filter: blur(var(--adv-glass-blur));
    backdrop-filter: blur(var(--adv-glass-blur));
    box-shadow: var(--adv-shadow-card);
}

.calendar-day-header[b-i5ooh5x8i6] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
    margin-block-end: 0.75rem;
    padding-block-end: 0.5rem;
    border-block-end: 1px solid var(--adv-border-strong);
}

.calendar-day-header[b-i5ooh5x8i6]  .calendar-day-close {
    flex-shrink: 0;
    color: var(--adv-text-muted) !important;
}

.calendar-day-header[b-i5ooh5x8i6]  .calendar-day-close:hover,
.calendar-day-header[b-i5ooh5x8i6]  .calendar-day-close:focus-visible {
    color: var(--adv-text) !important;
    background: var(--adv-row-hover) !important;
}

.calendar-day-title[b-i5ooh5x8i6] {
    margin: 0;
    font-size: 1.05rem;
    font-weight: 600;
}

.calendar-day-empty[b-i5ooh5x8i6] {
    margin: 0;
    color: var(--rz-text-secondary-color);
}

.calendar-day-items[b-i5ooh5x8i6] {
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.calendar-day-item[b-i5ooh5x8i6] {
    display: flex;
    flex-direction: column;
    gap: 0.15rem;
    width: 100%;
    padding: 0.5rem 0.65rem;
    border: none;
    border-inline-start: 4px solid var(--adv-event-color, var(--rz-primary));
    border-radius: 4px;
    background: color-mix(in srgb, var(--adv-event-color, var(--rz-primary)) 10%, transparent);
    color: var(--rz-text-color);
    font: inherit;
    text-align: start;
    cursor: pointer;
}

.calendar-day-item:hover[b-i5ooh5x8i6] {
    background: color-mix(in srgb, var(--adv-event-color, var(--rz-primary)) 20%, transparent);
}

.calendar-day-item:focus-visible[b-i5ooh5x8i6] {
    outline: 2px solid var(--rz-primary);
    outline-offset: 1px;
}

.calendar-day-item--done[b-i5ooh5x8i6] {
    opacity: 0.6;
}

.calendar-day-item--done .calendar-day-subject-text[b-i5ooh5x8i6] {
    text-decoration: line-through;
}

.calendar-day-subject[b-i5ooh5x8i6] {
    display: flex;
    align-items: center;
    gap: 0.3rem;
    font-weight: 600;
}

.calendar-day-subject-text[b-i5ooh5x8i6] {
    overflow-wrap: anywhere;
}

.calendar-day-subject .rzi[b-i5ooh5x8i6],
.calendar-day-line .rzi[b-i5ooh5x8i6] {
    flex-shrink: 0;
    font-size: 0.95rem;
    opacity: 0.8;
}

.calendar-day-line[b-i5ooh5x8i6] {
    display: flex;
    align-items: center;
    gap: 0.3rem;
    color: var(--rz-text-secondary-color);
    font-size: 0.85rem;
    overflow-wrap: anywhere;
}

.calendar-day-cases[b-i5ooh5x8i6] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.25rem;
    padding-inline-start: 0.5rem;
}

.calendar-day-section[b-i5ooh5x8i6] {
    margin-block-start: 1rem;
}

.calendar-day-section-title[b-i5ooh5x8i6] {
    margin: 0 0 0.35rem;
    font-size: 0.9rem;
    font-weight: 600;
}

.calendar-day-task[b-i5ooh5x8i6] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.3rem 0.4rem;
    border-inline-start: 3px dashed var(--adv-event-color, var(--rz-primary));
}

.calendar-day-task-subject[b-i5ooh5x8i6] {
    flex: 1;
    min-width: 0;
    overflow-wrap: anywhere;
}

.calendar-day-task--done .calendar-day-task-subject[b-i5ooh5x8i6] {
    text-decoration: line-through;
    opacity: 0.6;
}
/* /Components/Features/Calendar/CalendarListView.razor.rz.scp.css */
/* The agenda (#2037, B5.9; CALEND-15): its own look, in theme tokens, instead of the dashboard widget's. */

.calendar-agenda-empty[b-7d4k2xmetr] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.5rem;
    padding: 2rem 1rem;
    color: var(--rz-text-secondary-color);
}

.calendar-agenda-empty[b-7d4k2xmetr]  .rzi {
    font-size: 2.5rem;
}

.calendar-agenda-day[b-7d4k2xmetr] {
    margin-block-end: 1.25rem;
}

.calendar-agenda-date[b-7d4k2xmetr] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin: 0 0 0.35rem;
    padding-block-end: 0.35rem;
    border-block-end: 1px solid var(--rz-border-color);
    font-size: 0.95rem;
    font-weight: 600;
}

.calendar-agenda-day--today .calendar-agenda-date[b-7d4k2xmetr] {
    color: var(--rz-primary);
}

.calendar-agenda-today[b-7d4k2xmetr] {
    padding: 0.05rem 0.5rem;
    border-radius: 999px;
    background: var(--rz-primary);
    color: var(--rz-on-primary);
    font-size: 0.7rem;
    font-weight: 600;
}

.calendar-agenda-items[b-7d4k2xmetr] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.calendar-agenda-row[b-7d4k2xmetr] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.calendar-agenda-item[b-7d4k2xmetr] {
    display: flex;
    flex: 1;
    align-items: flex-start;
    gap: 0.75rem;
    min-width: 0;
    padding: 0.45rem 0.6rem;
    border: none;
    border-inline-start: 4px solid var(--adv-event-color, var(--rz-primary));
    border-radius: 4px;
    background: color-mix(in srgb, var(--adv-event-color, var(--rz-primary)) 10%, transparent);
    color: var(--rz-text-color);
    font: inherit;
    text-align: start;
    cursor: pointer;
}

.calendar-agenda-item:hover[b-7d4k2xmetr] {
    background: color-mix(in srgb, var(--adv-event-color, var(--rz-primary)) 20%, transparent);
}

.calendar-agenda-item:focus-visible[b-7d4k2xmetr] {
    outline: 2px solid var(--rz-primary);
    outline-offset: 1px;
}

.calendar-agenda-item--task[b-7d4k2xmetr] {
    border-inline-start-style: dashed;
}

.calendar-agenda-item--done[b-7d4k2xmetr] {
    opacity: 0.6;
}

.calendar-agenda-item--done .calendar-agenda-subject-text[b-7d4k2xmetr] {
    text-decoration: line-through;
}

.calendar-agenda-time[b-7d4k2xmetr] {
    flex: 0 0 7.5rem;
    color: var(--rz-text-secondary-color);
    font-size: 0.85rem;
    font-variant-numeric: tabular-nums;
}

.calendar-agenda-body[b-7d4k2xmetr] {
    display: flex;
    flex-direction: column;
    gap: 0.1rem;
    min-width: 0;
}

.calendar-agenda-subject[b-7d4k2xmetr] {
    display: flex;
    align-items: center;
    gap: 0.3rem;
    font-weight: 600;
}

.calendar-agenda-subject-text[b-7d4k2xmetr] {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.calendar-agenda-subject .rzi[b-7d4k2xmetr] {
    flex-shrink: 0;
    font-size: 0.95rem;
    opacity: 0.8;
}

.calendar-agenda-meta[b-7d4k2xmetr] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.25rem 0.75rem;
    color: var(--rz-text-secondary-color);
    font-size: 0.8rem;
}

.calendar-agenda-meta .rzi[b-7d4k2xmetr] {
    font-size: 0.9rem;
    vertical-align: middle;
}

.calendar-agenda-cases[b-7d4k2xmetr] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.25rem;
    flex-shrink: 0;
}

@media (max-width: 576px) {
    .calendar-agenda-time[b-7d4k2xmetr] {
        flex-basis: 5rem;
    }

    .calendar-agenda-row[b-7d4k2xmetr] {
        flex-wrap: wrap;
    }
}
/* /Components/Features/Calendar/CalendarPeek.razor.rz.scp.css */
.calendar-peek[b-7304mz9ak3] {
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
    max-width: 18rem;
    font-size: 0.8rem;
}

.calendar-peek-subject[b-7304mz9ak3] {
    font-weight: 600;
    overflow-wrap: anywhere;
}

.calendar-peek-line[b-7304mz9ak3] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    overflow-wrap: anywhere;
}

.calendar-peek-line .rzi[b-7304mz9ak3] {
    font-size: 0.9rem;
}
/* /Components/Features/Calendar/CalendarQuickView.razor.rz.scp.css */
/* The quick view (#2037): headed like the app's dialogs - the primary bar, white title - with the card's colour on
   the type, then when, what to do, and the facts, each named by an icon and a label. The panel around it
   (.calendar-quickview-panel) is styled in _components.css: Radzen's dialog host draws it. */
.calendar-quickview[b-3o5fw1bvoi] {
    display: flex;
    flex-direction: column;
    min-height: 100%;
    outline: none;
}

.calendar-quickview-header[b-3o5fw1bvoi] {
    display: flex;
    align-items: flex-start;
    gap: 0.5rem;
    padding: 0.875rem 0.75rem 0.875rem 1.25rem;
    background: var(--adv-primary);
    color: var(--adv-dialog-title-text);
}

.calendar-quickview-heading[b-3o5fw1bvoi] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    flex: 1 1 auto;
    min-width: 0;
}

.calendar-quickview-kicker[b-3o5fw1bvoi] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    font-size: 0.75rem;
    font-weight: 600;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--adv-dialog-close);
}

/* The card's colour, ringed so it reads on the bar whatever it is. */
.calendar-quickview-dot[b-3o5fw1bvoi] {
    width: 0.625rem;
    height: 0.625rem;
    border-radius: 50%;
    flex-shrink: 0;
    background: var(--adv-event-color, var(--adv-primary-light));
    box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.85);
}

.calendar-quickview-subject[b-3o5fw1bvoi] {
    margin: 0;
    font-size: 1.125rem;
    font-weight: 600;
    line-height: 1.35;
    color: var(--adv-dialog-title-text);
    overflow-wrap: anywhere;
}

.calendar-quickview-header[b-3o5fw1bvoi]  .calendar-quickview-close {
    flex-shrink: 0;
    margin-block-start: -0.125rem;
    color: var(--adv-dialog-close) !important;
}

.calendar-quickview-header[b-3o5fw1bvoi]  .calendar-quickview-close:hover,
.calendar-quickview-header[b-3o5fw1bvoi]  .calendar-quickview-close:focus-visible {
    color: var(--adv-dialog-title-text) !important;
    background: rgba(255, 255, 255, 0.15) !important;
}

.calendar-quickview-body[b-3o5fw1bvoi] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    padding: 1rem 1.25rem 1.25rem;
}

.calendar-quickview-when-row[b-3o5fw1bvoi] {
    display: flex;
    align-items: flex-start;
    gap: 0.5rem;
}

.calendar-quickview-when[b-3o5fw1bvoi] {
    margin: 0;
    font-weight: 600;
    color: var(--adv-text);
    line-height: 1.5rem;
}

.calendar-quickview-icon[b-3o5fw1bvoi] {
    flex-shrink: 0;
    font-size: 1.125rem;
    line-height: 1.5rem;
    color: var(--adv-primary);
}

.calendar-quickview-badges[b-3o5fw1bvoi] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.375rem;
    margin-block-start: -0.5rem;
    padding-inline-start: 1.625rem;
}

.calendar-quickview-badge[b-3o5fw1bvoi] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.125rem 0.5rem;
    border-radius: 999px;
    background: rgba(var(--adv-primary-rgb), 0.1);
    color: var(--adv-primary-dark);
    font-size: 0.75rem;
    font-weight: 600;
}

.calendar-quickview-badge--done[b-3o5fw1bvoi] {
    background: var(--adv-success-lighter);
    color: var(--adv-success-dark);
}

.calendar-quickview-badge .rzi[b-3o5fw1bvoi] {
    font-size: 0.875rem;
}

.calendar-quickview-actions[b-3o5fw1bvoi] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    padding-block-end: 1rem;
    border-block-end: 1px solid var(--adv-border-strong);
}

.calendar-quickview-actions[b-3o5fw1bvoi]  .calendar-quickview-delete {
    margin-inline-start: auto;
    color: var(--calendar-quickview-danger, var(--adv-danger-dark)) !important;
}

.calendar-quickview-actions[b-3o5fw1bvoi]  .calendar-quickview-delete:hover,
.calendar-quickview-actions[b-3o5fw1bvoi]  .calendar-quickview-delete:focus-visible {
    background: var(--adv-danger-lighter) !important;
}

.calendar-quickview-facts[b-3o5fw1bvoi] {
    display: flex;
    flex-direction: column;
    gap: 0.875rem;
    margin: 0;
}

.calendar-quickview-fact dt[b-3o5fw1bvoi] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.75rem;
    font-weight: 600;
    letter-spacing: 0.03em;
    text-transform: uppercase;
    color: var(--adv-text-muted);
}

.calendar-quickview-fact dd[b-3o5fw1bvoi] {
    margin: 0.125rem 0 0;
    padding-inline-start: 1.625rem;
    color: var(--adv-text);
    overflow-wrap: anywhere;
}

.calendar-quickview-calendar[b-3o5fw1bvoi] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    margin-inline-end: 0.875rem;
}

.calendar-quickview-swatch[b-3o5fw1bvoi] {
    width: 0.625rem;
    height: 0.625rem;
    border-radius: 3px;
    flex-shrink: 0;
}

.calendar-quickview-cases[b-3o5fw1bvoi] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.375rem;
}

.calendar-quickview-remark[b-3o5fw1bvoi] {
    white-space: pre-wrap;
}

.calendar-quickview-history[b-3o5fw1bvoi] {
    padding-block-start: 0.75rem;
    border-block-start: 1px solid var(--adv-border-strong);
}
/* /Components/Features/Calendar/CalendarSchedulerView.razor.rz.scp.css */
/* The command bar navigates (#2037, B5.3): the scheduler's own header is off, so
   nothing here styles it. Everything the grid draws comes from Radzen's
   components, hence ::deep throughout. */

/* ── Working time, today and week numbers (#2037, B5.4; OUTLOO-234) ──────── */

/* Outside the working day and on days off, as Outlook shades them. */
[b-qasfu3w5xt] .rz-slot.calendar-slot-off {
    background: color-mix(in srgb, var(--rz-text-color) 4%, transparent);
}

/* Today, by the firm's clock; after the shading so today wins on a day off. */
[b-qasfu3w5xt] .rz-slot.calendar-slot-today {
    background: color-mix(in srgb, var(--rz-primary) 7%, transparent);
}

/* While a card is dragged the cards let the drop through to the slots below them (advScheduler.initDrag). */
.calendar-dragging[b-qasfu3w5xt]  .rz-event {
    pointer-events: none;
}

/* A range being dragged over to create an appointment (B5.7, OUTLOO-224). */
[b-qasfu3w5xt] .rz-slot.calendar-slot-selecting {
    background: color-mix(in srgb, var(--rz-primary) 25%, transparent);
}

/* The cards above the slots: a positioned slot (the now-line's, a month day with its week number) would otherwise
   cover the cards drawn over it, and take their clicks (#2037, B5 review). */
[b-qasfu3w5xt] .rz-events {
    z-index: 1;
}

/* The now-line (B5.5, OUTLOO-233), over the cards, in the slot of this minute. */
[b-qasfu3w5xt] .rz-slot.calendar-slot-now {
    position: relative;
}

[b-qasfu3w5xt] .rz-slot.calendar-slot-now::after {
    content: "";
    position: absolute;
    inset-inline: 0;
    inset-block-start: var(--adv-now, 0%);
    border-block-start: 2px solid var(--rz-danger);
    z-index: 2;
    pointer-events: none;
}

/* The month grid's own day-name row (CalendarMonthView) replaces Radzen's, which
   counts to the end of the process culture's week. */
[b-qasfu3w5xt] .rz-month-view > .rz-view-header {
    display: none;
}

[b-qasfu3w5xt] .calendar-month-days {
    display: flex;
}

/* A week's number on its first day, top left; the day number stays top right. */
[b-qasfu3w5xt] .rz-month-view .rz-slot[data-week] {
    position: relative;
}

[b-qasfu3w5xt] .rz-month-view .rz-slot[data-week]::before {
    content: attr(data-week);
    position: absolute;
    inset-block-start: 0.15rem;
    inset-inline-start: 0.3rem;
    font-size: 0.68rem;
    color: var(--rz-text-secondary-color);
    pointer-events: none;
}

/* ── Cards (B5.5): a colour bar over a tint of it, in the theme's text colour ── */

[b-qasfu3w5xt] .rz-event-content.calendar-event {
    background: color-mix(in srgb, var(--adv-event-color, var(--rz-primary)) 18%, var(--rz-base-background-color));
    border-inline-start: 4px solid var(--adv-event-color, var(--rz-primary));
    border-radius: 4px;
    color: var(--rz-text-color);
}

[b-qasfu3w5xt] .rz-event-content.calendar-event:hover {
    background: color-mix(in srgb, var(--adv-event-color, var(--rz-primary)) 30%, var(--rz-base-background-color));
}

/* The bottom edge of a timed card stretches it (B5.8, CALEND-10); only on a time grid. */
[b-qasfu3w5xt] .rz-event-content.calendar-event {
    position: relative;
}

[b-qasfu3w5xt] .calendar-event-resize {
    position: absolute;
    inset-inline: 0;
    inset-block-end: 0;
    height: 6px;
    cursor: ns-resize;
}

[b-qasfu3w5xt] .rz-month-view .calendar-event-resize,
[b-qasfu3w5xt] .calendar-allday .calendar-event-resize {
    display: none;
}

[b-qasfu3w5xt] .rz-event.calendar-event--resizing {
    z-index: 3;
    opacity: 0.85;
}

/* A Belgian holiday (B6.1): a quiet banner in the layer's colour, not a card to open. */
[b-qasfu3w5xt] .rz-event-content.calendar-event--holiday {
    border-inline-start-style: double;
    cursor: default;
    font-style: italic;
}

[b-qasfu3w5xt] .rz-event-content.calendar-event--legal {
    --adv-event-color: var(--rz-danger);
}

[b-qasfu3w5xt] .rz-event-content.calendar-event--community {
    --adv-event-color: var(--rz-warning);
}

[b-qasfu3w5xt] .rz-event-content.calendar-event--judicialvacation {
    --adv-event-color: var(--rz-info);
}

/* A task: dashed, so it is not taken for an appointment. */
[b-qasfu3w5xt] .rz-event-content.calendar-event--task {
    border-inline-start-style: dashed;
    font-style: italic;
}

[b-qasfu3w5xt] .rz-event-content.calendar-event--done {
    opacity: 0.6;
}

[b-qasfu3w5xt] .rz-event-content.calendar-event--done .calendar-event-subject {
    text-decoration: line-through;
}

[b-qasfu3w5xt] .calendar-event-line {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    min-width: 0;
}

[b-qasfu3w5xt] .calendar-event-time {
    flex-shrink: 0;
    font-variant-numeric: tabular-nums;
    color: var(--rz-text-secondary-color);
}

[b-qasfu3w5xt] .calendar-event-subject {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-weight: 600;
}

[b-qasfu3w5xt] .calendar-event-icon {
    flex-shrink: 0;
    font-size: 0.9em;
    opacity: 0.8;
}

/* A month day fits three cards and the "+N more" link on one line each. */
[b-qasfu3w5xt] .rz-month-view .rz-event-content {
    font-size: 0.75rem;
}

[b-qasfu3w5xt] .rz-month-view .rz-event-list-btn {
    font-size: 0.72rem;
}

/* ── The all-day row above a time grid (B5.5, OUTLOO-235) ─────────────────── */

/* Radzen's header row reserves the scrollbar the same way, so the columns line up. */
[b-qasfu3w5xt] .calendar-allday {
    display: grid;
    gap: 2px 0;
    max-height: 6.5rem;
    overflow-y: scroll;
    padding-block: 2px;
    border-block-end: var(--rz-scheduler-header-border);
    background-color: var(--rz-scheduler-header-background-color);
}

[b-qasfu3w5xt] .calendar-allday-label {
    grid-column: 1;
    align-self: center;
    padding-inline: 0.25rem;
    font-size: var(--rz-scheduler-header-font-size);
    color: var(--rz-text-secondary-color);
    text-align: end;
}

[b-qasfu3w5xt] .calendar-allday-item {
    min-width: 0;
    margin: 0 2px;
    padding: 0;
    border: none;
    background: none;
    font: inherit;
    text-align: start;
    cursor: pointer;
}

[b-qasfu3w5xt] .calendar-allday-item:focus-visible {
    outline: var(--rz-outline-focus, 2px solid var(--rz-primary));
    outline-offset: 1px;
}

[b-qasfu3w5xt] .calendar-allday-item .rz-event-content {
    height: auto;
}
/* /Components/Features/Calendar/CalendarShortcutsDialog.razor.rz.scp.css */
.calendar-shortcuts[b-oz5og3rcdc] {
    width: 100%;
    border-collapse: collapse;
}

.calendar-shortcuts th[b-oz5og3rcdc],
.calendar-shortcuts td[b-oz5og3rcdc] {
    padding: 0.35rem 0.5rem;
    border-block-end: 1px solid var(--rz-border-color);
    text-align: start;
    vertical-align: middle;
}

.calendar-shortcuts th[b-oz5og3rcdc] {
    width: 9rem;
    font-weight: 400;
    white-space: nowrap;
}

.calendar-shortcuts kbd[b-oz5og3rcdc] {
    display: inline-block;
    min-width: 1.6rem;
    padding: 0.05rem 0.4rem;
    border: 1px solid var(--rz-border-color);
    border-block-end-width: 2px;
    border-radius: 4px;
    background: var(--rz-base-background-color);
    font-family: inherit;
    font-size: 0.8rem;
    text-align: center;
}

.calendar-shortcuts-or[b-oz5og3rcdc] {
    margin-inline: 0.3rem;
    color: var(--rz-text-secondary-color);
    font-size: 0.8rem;
}
/* /Components/Features/Calendar/CalendarSidePane.razor.rz.scp.css */
.calendar-side-pane[b-1nvhvzb4c5] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    min-width: 0;
}

.calendar-mini-month[b-1nvhvzb4c5]  .rz-datepicker-inline,
.calendar-mini-month[b-1nvhvzb4c5]  .rz-calendar {
    width: 100%;
    border: none;
    box-shadow: none;
    background: transparent;
}

/* The month and year pickers share what the arrows leave of the pane (#2037): Radzen gives them fixed widths
   (140px and 100px), so the header overflowed the pane on both sides. They read as the month's title. */
.calendar-mini-month[b-1nvhvzb4c5]  .rz-calendar-header {
    gap: 0.125rem;
    padding-block: 0.25rem;
    padding-inline: 0;
}

/* The arrows centred in round buttons as tall as the pickers, on the title's line (#2037: without Radzen's padding
   the chevron sat in the button's top corner). */
.calendar-mini-month[b-1nvhvzb4c5]  .rz-calendar-header .rz-button.rz-calendar-prev,
.calendar-mini-month[b-1nvhvzb4c5]  .rz-calendar-header .rz-button.rz-calendar-next {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 2rem;
    width: 2rem;
    height: 2rem;
    min-width: 0;
    min-height: 0;
    padding: 0;
    border-radius: 50%;
}

.calendar-mini-month[b-1nvhvzb4c5]  .rz-calendar-prev .rzi,
.calendar-mini-month[b-1nvhvzb4c5]  .rz-calendar-next .rzi {
    width: auto;
    height: auto;
    font-size: 1.25rem;
    line-height: 1;
}

.calendar-mini-month[b-1nvhvzb4c5]  .rz-calendar-title {
    flex: 1 1 auto;
    min-width: 0;
    gap: 0.125rem;
}

.calendar-mini-month[b-1nvhvzb4c5]  .rz-calendar-title .rz-dropdown {
    width: auto;
    min-width: 0;
    height: 2rem;
    padding-block: 0;
    padding-inline: 0 1.25rem;
    border-color: transparent !important;
    background: transparent;
    box-shadow: none !important;
}

.calendar-mini-month[b-1nvhvzb4c5]  .rz-calendar-month-dropdown {
    flex: 1 1 auto;
}

.calendar-mini-month[b-1nvhvzb4c5]  .rz-calendar-year-dropdown {
    flex: 0 0 4rem;
}

.calendar-mini-month[b-1nvhvzb4c5]  .rz-calendar-title .rz-dropdown:hover,
.calendar-mini-month[b-1nvhvzb4c5]  .rz-calendar-title .rz-state-focused {
    background: var(--adv-row-hover);
}

/* The dropdown's own input stays for the keyboard and screen readers, out of the layout. */
.calendar-mini-month[b-1nvhvzb4c5]  .rz-calendar-title .rz-helper-hidden-accessible {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
}

.calendar-mini-month[b-1nvhvzb4c5]  .rz-calendar-title .rz-dropdown-label {
    min-width: 0;
    margin: 0;
    padding-block: 0;
    padding-inline: 0.375rem 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 0.875rem;
    font-weight: 600;
    line-height: 1.875rem;
    text-transform: capitalize;
}

.calendar-mini-month[b-1nvhvzb4c5]  .rz-calendar-title .rz-dropdown-trigger {
    inset-block: 0;
    inset-inline-end: 0;
    width: 1.25rem;
    height: auto;
    display: flex;
    align-items: center;
    justify-content: center;
}

.calendar-mini-month[b-1nvhvzb4c5]  [data-shown] {
    background: var(--rz-primary-lighter, rgba(74, 159, 213, 0.15));
    border-radius: 4px;
}

.calendar-pane-group-title[b-1nvhvzb4c5] {
    margin: 0 0 0.35rem;
    font-size: 0.75rem;
    font-weight: 600;
    letter-spacing: 0.03em;
    text-transform: uppercase;
    color: var(--adv-text-muted);
}

.calendar-pane-list[b-1nvhvzb4c5] {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 0.1rem;
}

.calendar-pane-item[b-1nvhvzb4c5] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.3rem 0.35rem;
    border-radius: 4px;
    cursor: pointer;
    font-size: 0.875rem;
    min-height: 2rem;
}

.calendar-pane-item:hover[b-1nvhvzb4c5] {
    background: var(--adv-surface-hover, rgba(0, 0, 0, 0.04));
}

.calendar-pane-item input[b-1nvhvzb4c5] {
    width: 1rem;
    height: 1rem;
    margin: 0;
    flex-shrink: 0;
}

.calendar-pane-swatch[b-1nvhvzb4c5] {
    width: 0.75rem;
    height: 0.75rem;
    border-radius: 3px;
    flex-shrink: 0;
}

.calendar-pane-name[b-1nvhvzb4c5] {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.calendar-pane-empty[b-1nvhvzb4c5] {
    padding: 0.75rem;
    border: 1px dashed var(--adv-border);
    border-radius: 6px;
}

.calendar-pane-browse[b-1nvhvzb4c5] {
    align-self: flex-start;
}

/* A holiday in the mini-month (#2037, B6.1): a dot under the day, named on hover. */
[b-1nvhvzb4c5] [data-holiday] {
    position: relative;
}

[b-1nvhvzb4c5] [data-holiday]::after {
    content: "";
    position: absolute;
    inset-inline-start: 50%;
    inset-block-end: 2px;
    width: 4px;
    height: 4px;
    margin-inline-start: -2px;
    border-radius: 50%;
    background: var(--rz-danger);
}

.calendar-pane-hint[b-1nvhvzb4c5] {
    margin: 0.25rem 0 0;
    color: var(--rz-text-secondary-color);
    font-size: 0.72rem;
}
/* /Components/Features/Calendar/CalendarTaskDialog.razor.rz.scp.css */
.task-case-results[b-pn306ycxc5] {
    border: 1px solid var(--adv-border);
    border-radius: 6px;
    overflow: hidden;
}

.task-case-row[b-pn306ycxc5] {
    padding: 0.4rem 0.75rem;
    cursor: pointer;
    font-size: 0.875rem;
    border-bottom: 1px solid var(--adv-border);
    transition: background 0.15s;
}

.task-case-row:last-child[b-pn306ycxc5] {
    border-bottom: none;
}

.task-case-row:hover[b-pn306ycxc5] {
    background: color-mix(in srgb, var(--rz-primary) 6%, transparent);
}
/* /Components/Features/Calendar/NewAppointmentDialog.razor.rz.scp.css */
/* The appointment editor on one screen (#2037, B5.10): two columns where there is room, one on a phone. */

.appt-editor[b-nbqq50s7ii] {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 0.85rem;
    padding: 0.25rem 0.25rem 0;
}

.appt-editor[b-nbqq50s7ii]  .rz-form-field {
    width: 100%;
}

.appt-editor-synced[b-nbqq50s7ii] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    color: var(--rz-info);
    font-size: 0.8rem;
    font-weight: 600;
}

.appt-editor-when[b-nbqq50s7ii] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) auto;
    align-items: center;
    gap: 0.75rem;
}

.appt-editor-pair[b-nbqq50s7ii] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 0.75rem;
}

.appt-editor-switches[b-nbqq50s7ii] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem 1.5rem;
}

.appt-editor-switch[b-nbqq50s7ii] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.appt-editor-switch > span[b-nbqq50s7ii] {
    display: flex;
    flex-direction: column;
}

.appt-editor-help[b-nbqq50s7ii] {
    margin: 0;
    color: var(--rz-text-secondary-color);
    font-size: 0.78rem;
}

.appt-editor-error[b-nbqq50s7ii] {
    color: var(--rz-danger);
}

.appt-editor-conflicts ul[b-nbqq50s7ii] {
    margin: 0.25rem 0;
    padding-inline-start: 1.1rem;
}

.appt-editor-option[b-nbqq50s7ii] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
}

.appt-editor-swatch[b-nbqq50s7ii] {
    width: 0.75rem;
    height: 0.75rem;
    border-radius: 3px;
    flex-shrink: 0;
}

.appt-editor-swatch--round[b-nbqq50s7ii] {
    border-radius: 50%;
}

.appt-editor-section[b-nbqq50s7ii] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    padding-block-start: 0.75rem;
    border-block-start: 1px solid var(--rz-border-color);
}

.appt-editor-section-title[b-nbqq50s7ii],
.appt-editor-subtitle[b-nbqq50s7ii] {
    margin: 0;
    font-size: 0.9rem;
    font-weight: 600;
}

.appt-editor-subtitle[b-nbqq50s7ii] {
    margin-block-start: 0.5rem;
}

.appt-editor-search[b-nbqq50s7ii] {
    display: flex;
    align-items: flex-end;
    gap: 0.5rem;
}

.appt-editor-search[b-nbqq50s7ii]  .rz-form-field {
    flex: 1;
}

.appt-case-results[b-nbqq50s7ii] {
    max-height: 200px;
    overflow-y: auto;
    border: 1px solid var(--rz-border-color);
    border-radius: 6px;
}

.appt-case-row[b-nbqq50s7ii] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    width: 100%;
    padding: 0.5rem 0.75rem;
    border: none;
    border-block-end: 1px solid var(--rz-border-color);
    background: none;
    color: var(--rz-text-color);
    font: inherit;
    text-align: start;
    cursor: pointer;
}

.appt-case-row:last-child[b-nbqq50s7ii] {
    border-block-end: none;
}

.appt-case-row:hover[b-nbqq50s7ii] {
    background: color-mix(in srgb, var(--rz-primary) 6%, transparent);
}

.appt-case-row.appt-case-linked[b-nbqq50s7ii] {
    background: color-mix(in srgb, var(--rz-success) 8%, transparent);
}

.appt-case-name[b-nbqq50s7ii] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    min-width: 0;
}

.appt-case-name > span[b-nbqq50s7ii] {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.appt-case-number[b-nbqq50s7ii] {
    font-size: 0.85rem;
    font-weight: 600;
}

.appt-case-title[b-nbqq50s7ii] {
    overflow: hidden;
    color: var(--rz-text-secondary-color);
    font-size: 0.78rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.appt-editor-linked[b-nbqq50s7ii] {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.appt-editor-linked li[b-nbqq50s7ii] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.35rem 0.5rem;
    border-radius: 6px;
    background: color-mix(in srgb, var(--rz-text-color) 4%, transparent);
}

.appt-editor-linked .appt-case-title[b-nbqq50s7ii] {
    flex: 1;
}

.appt-editor-footer[b-nbqq50s7ii] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
    padding-block: 0.75rem 0.25rem;
    border-block-start: 1px solid var(--rz-border-color);
}

.appt-editor-footer-start[b-nbqq50s7ii] {
    display: flex;
    gap: 0.5rem;
}

@media (max-width: 576px) {
    .appt-editor-when[b-nbqq50s7ii],
    .appt-editor-pair[b-nbqq50s7ii] {
        grid-template-columns: minmax(0, 1fr);
    }
}
/* /Components/Features/Cases/CaseTagChips.razor.rz.scp.css */
.case-tag-chips-row[b-7tchi0nd6x] {
    display: flex;
    flex-wrap: nowrap;
    gap: 4px;
    justify-content: center;
    align-items: center;
    overflow: hidden;
}

.case-kpi-tag[b-7tchi0nd6x] {
    padding: 1px 8px;
    border-radius: 10px;
    font-size: 0.72rem;
    line-height: 1.5;
    white-space: nowrap;
    max-width: 120px;
    overflow: hidden;
    text-overflow: ellipsis;
    display: inline-block;
}

.case-tag-more[b-7tchi0nd6x] {
    cursor: default;
}
/* /Components/Features/Cases/Modals/AddCaseAppointmentDialog.razor.rz.scp.css */
.add-appt-choice-card[b-b2kzq1l2i1] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1rem 1.25rem;
    border: 1px solid var(--adv-border);
    border-radius: 8px;
    cursor: pointer;
    transition: background 0.15s, border-color 0.15s;
}

.add-appt-choice-card:hover[b-b2kzq1l2i1] {
    background: rgba(74, 159, 213, 0.04);
    border-color: var(--adv-primary);
}

.add-appt-choice-icon[b-b2kzq1l2i1] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    border-radius: 10px;
    flex-shrink: 0;
}

.add-appt-choice-text[b-b2kzq1l2i1] {
    display: flex;
    flex-direction: column;
    gap: 0.15rem;
    flex: 1;
}

.add-appt-choice-title[b-b2kzq1l2i1] {
    font-weight: 600;
    font-size: 0.9rem;
}

.add-appt-choice-desc[b-b2kzq1l2i1] {
    font-size: 0.8rem;
    color: var(--adv-text-muted);
}

.add-appt-results[b-b2kzq1l2i1] {
    max-height: 280px;
    overflow-y: auto;
    border: 1px solid var(--adv-border);
    border-radius: 6px;
}

.add-appt-result-row[b-b2kzq1l2i1] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    padding: 0.6rem 0.75rem;
    cursor: pointer;
    transition: background 0.15s;
    border-bottom: 1px solid var(--adv-border);
}

.add-appt-result-row:last-child[b-b2kzq1l2i1] {
    border-bottom: none;
}

.add-appt-result-row:hover[b-b2kzq1l2i1] {
    background: rgba(74, 159, 213, 0.06);
}

.add-appt-result-row.add-appt-result-selected[b-b2kzq1l2i1] {
    background: rgba(39, 174, 96, 0.06);
}

.add-appt-result-info[b-b2kzq1l2i1] {
    flex: 1;
    min-width: 0;
}

.add-appt-result-date[b-b2kzq1l2i1] {
    font-weight: 600;
    font-size: 0.83rem;
    color: var(--adv-primary-dark);
}

.add-appt-result-time[b-b2kzq1l2i1] {
    font-size: 0.8rem;
    color: var(--adv-text-muted);
}

.add-appt-result-subject[b-b2kzq1l2i1] {
    font-size: 0.85rem;
    font-weight: 500;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
/* /Components/Features/Cases/Modals/ManageTagsDialog.razor.rz.scp.css */
.tag-dialog-list[b-urmg6wzsvs] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.tag-dialog-chip[b-urmg6wzsvs] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.35rem 0.7rem;
    border-radius: 20px;
    font-size: 0.8rem;
    font-weight: 600;
    transition: transform 0.15s, box-shadow 0.15s, opacity 0.15s;
}

.tag-dialog-chip-active[b-urmg6wzsvs] {
    background: var(--tag-color);
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.1);
}

.tag-dialog-chip-available[b-urmg6wzsvs] {
    background: var(--tag-color);
    opacity: 0.65;
    cursor: pointer;
}

.tag-dialog-chip-available:hover[b-urmg6wzsvs] {
    opacity: 1;
    transform: translateY(-1px);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.12);
}

.tag-dialog-chip-name[b-urmg6wzsvs] {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 220px;
}

.tag-dialog-chip-remove[b-urmg6wzsvs] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: none;
    border: none;
    padding: 0;
    margin-left: 0.15rem;
    cursor: pointer;
    opacity: 0.6;
    border-radius: 50%;
    width: 20px;
    height: 20px;
    transition: opacity 0.15s, background 0.15s;
    color: inherit;
}

.tag-dialog-chip-remove:hover[b-urmg6wzsvs] {
    opacity: 1;
    background: var(--rz-base-200, rgba(0, 0, 0, 0.1));
}

.tag-dialog-empty[b-urmg6wzsvs] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.5rem;
    padding: 1.25rem 0;
}
/* /Components/Features/Cases/Modals/MemoDialog.razor.rz.scp.css */
.memo-content-field[b-3c5uq2jk4w] {
    width: 100%;
}

.memo-content-wrapper[b-3c5uq2jk4w] {
    position: relative;
    width: 100%;
}

.memo-content-textarea[b-3c5uq2jk4w] {
    width: 100%;
    box-sizing: border-box;
    resize: vertical;
    min-height: 96px;
    padding: 0.5rem 0.75rem;
    font: inherit;
    color: var(--rz-text-color, #333);
    background: var(--rz-input-background-color, #fff);
    border: 1px solid var(--rz-input-border-color, #ccc);
    border-radius: 4px;
}

.memo-content-textarea:focus[b-3c5uq2jk4w] {
    outline: none;
    border-color: var(--rz-primary, #2d7ab5);
    box-shadow: 0 0 0 1px var(--rz-primary, #2d7ab5);
}

.memo-mention-picker[b-3c5uq2jk4w] {
    position: absolute;
    left: 0;
    right: 0;
    top: 100%;
    z-index: 1100;
    margin-top: 2px;
    max-height: 200px;
    overflow-y: auto;
    background: var(--rz-base-background-color, #fff);
    border: 1px solid var(--rz-border-color, #e0e0e0);
    border-radius: 6px;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);
}

.memo-mention-item[b-3c5uq2jk4w] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.45rem 0.75rem;
    font-size: 0.85rem;
    cursor: pointer;
}

.memo-mention-item:hover[b-3c5uq2jk4w] {
    background: rgba(45, 122, 181, 0.08);
}
/* /Components/Features/Cases/Tabs/CaseDetailMemosTab.razor.rz.scp.css */
.case-memo-tags[b-qlufxzqnmu] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.25rem;
    margin-top: 0.4rem;
}
/* /Components/Features/Documents/DocumentBrowser.razor.rz.scp.css */
/* ==========================================================================
   DocumentBrowser — unified folder+file grid (SharePoint-style). #1795
   ========================================================================== */

/* Name cell: icon + name + (hover) pencil, on one line. */
.docbrowser-name[b-mlamsnm64c] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    min-width: 0;
}

/* Folders read slightly stronger than files. */
.docbrowser-foldername[b-mlamsnm64c] {
    font-weight: 600;
}

/* The rename pencil stays out of the way until the name cell is hovered. */
.docbrowser-pencil[b-mlamsnm64c] {
    opacity: 0;
    transition: opacity 0.15s ease;
}

.docbrowser-name:hover .docbrowser-pencil[b-mlamsnm64c] {
    opacity: 0.6;
}

.docbrowser-pencil:hover[b-mlamsnm64c] {
    opacity: 1;
}
/* /Components/Features/Documents/DocumentDetailDialog.razor.rz.scp.css */
/* Rounded tinted tile behind the file-type icon. --rz-base-200 adapts to
   the active theme, so it stays a subtle surface in light and dark. */
.doc-detail__icon[b-fefbn7j8og] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 52px;
    height: 52px;
    border-radius: 12px;
    background: var(--rz-base-200, rgba(128, 128, 128, 0.12));
    flex-shrink: 0;
}

/* Small pill chip for the locked state — warning tokens keep it legible
   against both light and dark dialog surfaces. */
.doc-detail__lock[b-fefbn7j8og] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.125rem 0.5rem;
    border-radius: 999px;
    font-size: 0.75rem;
    font-weight: 600;
    line-height: 1.4;
    background: var(--rz-warning-lighter, #fff3e0);
    color: var(--rz-warning-darker, #8a5300);
}

/* Compact uppercase field label sitting above its value. */
.doc-detail__label[b-fefbn7j8og] {
    font-size: 0.7rem;
    font-weight: 600;
    letter-spacing: 0.03em;
    text-transform: uppercase;
    color: var(--rz-text-secondary-color);
    margin-bottom: 0.25rem;
}
/* /Components/Features/Documents/DocumentTemplatesTab.razor.rz.scp.css */
.templates-tab[b-ow1rdu5yyz] {
    padding: 0;
}

.templates-tab__toolbar[b-ow1rdu5yyz] {
    display: flex;
    align-items: center;
    margin-bottom: 1rem;
}

.templates-group[b-ow1rdu5yyz] {
    margin-bottom: 1.5rem;
}

/* Category heading: title + count chip on a subtle divider. */
.templates-group__heading[b-ow1rdu5yyz] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    border-bottom: 1px solid var(--adv-border);
    padding-bottom: 0.4rem;
    margin-bottom: 1rem;
}

.templates-group__title[b-ow1rdu5yyz] {
    font-size: 0.95rem;
    font-weight: 600;
    color: var(--adv-text);
}

.templates-group__count[b-ow1rdu5yyz] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 1.25rem;
    height: 1.25rem;
    padding: 0 0.4rem;
    border-radius: 999px;
    font-size: 0.7rem;
    font-weight: 600;
    background: rgba(var(--adv-primary-rgb), 0.12);
    color: var(--adv-primary-dark);
}

/* Empty state: centered colored chip + message + CTA. */
.templates-empty[b-ow1rdu5yyz] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.75rem;
    padding: 3.5rem 1rem;
    text-align: center;
}

.templates-empty__icon[b-ow1rdu5yyz] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 64px;
    height: 64px;
    border-radius: 16px;
    background: rgba(var(--adv-primary-rgb), 0.1);
    color: var(--adv-primary);
}

.templates-empty__text[b-ow1rdu5yyz] {
    color: var(--adv-text-muted) !important;
    max-width: 22rem;
    margin: 0;
}
/* /Components/Features/Documents/DocumentUploadDialog.razor.rz.scp.css */
/* Read-only destination banner (the folder selected in the tree). */
.upload-destination[b-x46kt49xze] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 0.75rem;
    border-radius: 6px;
    background: var(--rz-base-200);
}

/* Drop zone: dashed surface that highlights to the primary accent on hover.
   The transparent InputFile overlays the whole zone so the entire area is
   clickable. All colours are theme tokens, so contrast holds in dark mode. */
.upload-drop-zone[b-x46kt49xze] {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    border: 2px dashed var(--rz-border-color);
    border-radius: 10px;
    padding: 2rem;
    text-align: center;
    cursor: pointer;
    transition: border-color 0.15s ease, background-color 0.15s ease;
}

.upload-drop-zone:hover[b-x46kt49xze] {
    border-color: var(--rz-primary);
    background-color: var(--rz-base-200);
}

/* The transparent file <input> overlay is styled inline in the .razor —
   scoped CSS can't reach the element InputFile renders. */

/* Selected files render as compact bordered rows with a truncating name. */
.upload-file-row[b-x46kt49xze] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.375rem 0.625rem;
    border: 1px solid var(--rz-border-color);
    border-radius: 6px;
    background: var(--rz-base-100);
}

.upload-file-row__name[b-x46kt49xze] {
    flex: 1;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
/* /Components/Features/Documents/TemplateCard.razor.rz.scp.css */
/* TemplateCard: a frosted-glass tile (dash-card base) for a document template,
   aligned to the settings-card family — colored icon chip, distinct status pill,
   hover lift, and a primary "Use" CTA with muted icon utilities. #1797 */

.template-card[b-zt8qzmy3b6] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    height: 100%;
    transition: box-shadow 0.2s ease, transform 0.2s ease;
}

.template-card:hover[b-zt8qzmy3b6] {
    transform: translateY(-2px);
    box-shadow: var(--adv-shadow-elevated-hover) !important;
}

.template-card--inactive[b-zt8qzmy3b6] {
    opacity: 0.6;
    filter: grayscale(0.35);
}

.template-card__header[b-zt8qzmy3b6] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 0.5rem;
    margin-bottom: 0.25rem;
}

/* Colored icon chip — mirrors .settings-card-icon (48x48, radius 12, tinted).
   The material icon inherits its colour from the chip (currentColor). */
.template-card__icon[b-zt8qzmy3b6] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    border-radius: 12px;
    flex-shrink: 0;
}

.template-card__icon--standard[b-zt8qzmy3b6] {
    background: rgba(var(--adv-primary-rgb), 0.12);
    color: var(--adv-primary);
}

.template-card__icon--custom[b-zt8qzmy3b6] {
    background: rgba(var(--adv-slate-rgb), 0.12);
    color: var(--adv-slate);
}

/* Status pill — Standard (brand) vs Custom (slate), distinct at a glance. */
.template-card__badge[b-zt8qzmy3b6] {
    display: inline-flex;
    align-items: center;
    gap: 0.2rem;
    padding: 0.15rem 0.55rem;
    border-radius: 999px;
    font-size: 0.7rem;
    font-weight: 600;
    white-space: nowrap;
}

.template-card__badge--standard[b-zt8qzmy3b6] {
    background: rgba(var(--adv-primary-rgb), 0.12);
    color: var(--adv-primary-dark);
}

.template-card__badge--custom[b-zt8qzmy3b6] {
    background: rgba(var(--adv-slate-rgb), 0.10);
    color: var(--adv-slate);
}

/* Name: clamp to 2 lines so cards keep a consistent height. */
.template-card__name[b-zt8qzmy3b6] {
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    margin-bottom: 0 !important;
    color: var(--adv-text);
}

/* Description: muted, up to 2 lines. */
.template-card__description[b-zt8qzmy3b6] {
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    margin: 0 !important;
    color: var(--adv-text-muted) !important;
}

/* Category tag + last-used, pushed to the bottom of the card. */
.template-card__meta[b-zt8qzmy3b6] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.5rem;
    margin-top: auto;
    padding-top: 0.5rem;
}

.template-card__tag[b-zt8qzmy3b6] {
    display: inline-block;
    padding: 0.1rem 0.5rem;
    border-radius: 6px;
    font-size: 0.7rem;
    font-weight: 500;
    background: var(--adv-border-subtle);
    color: var(--adv-text-muted);
}

.template-card__lastused[b-zt8qzmy3b6] {
    display: inline-flex;
    align-items: center;
    gap: 0.2rem;
    font-size: 0.72rem;
    color: var(--adv-text-muted);
}

/* Action bar — primary CTA left, muted icon utilities right. */
.template-card__actions[b-zt8qzmy3b6] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
    padding-top: 0.625rem;
    margin-top: 0.25rem;
    border-top: 1px solid var(--adv-border);
}

.template-card__utils[b-zt8qzmy3b6] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    gap: 0.125rem;
}

/* Native icon buttons (RadzenButton Variant.Text + colored style drops the glyph
   and shows a colored block — #1782). Glyph color comes from the button via
   currentColor; muted by default, accented per state. */
.template-card__iconbtn[b-zt8qzmy3b6] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    padding: 0;
    border: none;
    border-radius: 6px;
    background: transparent;
    color: var(--adv-text-muted);
    cursor: pointer;
    transition: background 0.15s ease, color 0.15s ease;
}

.template-card__iconbtn:hover:not(:disabled)[b-zt8qzmy3b6] {
    background: rgba(var(--adv-primary-rgb), 0.08);
    color: var(--adv-primary);
}

.template-card__iconbtn:disabled[b-zt8qzmy3b6] {
    opacity: 0.4;
    cursor: default;
}

.template-card__iconbtn--active[b-zt8qzmy3b6] {
    color: var(--adv-success);
}

.template-card__iconbtn--active:hover:not(:disabled)[b-zt8qzmy3b6] {
    background: rgba(var(--adv-success-rgb), 0.10);
    color: var(--adv-success);
}

.template-card__iconbtn--danger[b-zt8qzmy3b6] {
    color: var(--adv-danger);
}

.template-card__iconbtn--danger:hover:not(:disabled)[b-zt8qzmy3b6] {
    background: rgba(var(--adv-danger-rgb), 0.10);
    color: var(--adv-danger);
}
/* /Components/Features/Documents/UploadTemplateDialog.razor.rz.scp.css */
/* Drop zone: dashed surface that highlights to the primary accent on hover.
   The transparent InputFile overlays the whole zone so the entire area is
   clickable. All colours are theme tokens, so contrast holds in dark mode. */
.upload-template-drop-zone[b-3845qx0k30] {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    border: 2px dashed var(--rz-border-color);
    border-radius: 10px;
    padding: 2rem;
    text-align: center;
    cursor: pointer;
    transition: border-color 0.15s ease, background-color 0.15s ease;
}

.upload-template-drop-zone:hover[b-3845qx0k30] {
    border-color: var(--rz-primary);
    background-color: var(--rz-base-200);
}

/* The transparent file <input> overlay is styled inline in the .razor —
   scoped CSS can't reach the element InputFile renders. */

/* Selected file renders as a compact bordered row with a truncating name. */
.upload-template-file-row[b-3845qx0k30] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.375rem 0.625rem;
    border: 1px solid var(--rz-border-color);
    border-radius: 6px;
    background: var(--rz-base-100);
}

.upload-template-file-row__name[b-3845qx0k30] {
    flex: 1;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
/* /Components/Features/Parties/SavedFiltersMenu.razor.rz.scp.css */
.saved-filters[b-n9v0fzzrqo] {
    position: relative;
    display: inline-block;
    z-index: 1001;
}

.saved-filters__backdrop[b-n9v0fzzrqo] {
    position: fixed;
    inset: 0;
    z-index: 1000;
    background: transparent;
}

.saved-filters__popup[b-n9v0fzzrqo] {
    position: absolute;
    top: calc(100% + 4px);
    right: 0;
    z-index: 1002;
    min-width: 260px;
    max-height: 360px;
    overflow-y: auto;
    background: var(--adv-surface);
    border: 1px solid var(--adv-border);
    border-radius: 0.6rem;
    box-shadow: var(--adv-shadow-elevated);
    padding: 0.35rem;
}

.saved-filters__empty[b-n9v0fzzrqo] {
    padding: 0.6rem 0.7rem;
    color: var(--adv-text-muted);
    font-size: 0.85rem;
}

.saved-filters__row[b-n9v0fzzrqo] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
}

.saved-filters__apply[b-n9v0fzzrqo] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    flex: 1 1 auto;
    border: none;
    background: transparent;
    cursor: pointer;
    text-align: left;
    padding: 0.45rem 0.55rem;
    border-radius: 0.45rem;
    font-size: 0.88rem;
    color: var(--adv-text);
}

.saved-filters__apply:hover[b-n9v0fzzrqo] {
    background: var(--adv-row-hover);
}

.saved-filters__star[b-n9v0fzzrqo] {
    color: var(--adv-warning);
    font-size: 1rem;
}

.saved-filters__delete[b-n9v0fzzrqo] {
    border: none;
    background: transparent;
    color: var(--adv-text-muted);
    cursor: pointer;
    padding: 0.3rem;
    border-radius: 50%;
}

.saved-filters__delete:hover[b-n9v0fzzrqo] {
    color: var(--adv-danger);
    background: var(--adv-row-hover);
}

.saved-filters__delete-icon[b-n9v0fzzrqo] {
    font-size: 1.05rem;
}

.saved-filters__divider[b-n9v0fzzrqo] {
    height: 1px;
    margin: 0.35rem 0.25rem;
    background: var(--adv-border);
}

.saved-filters__save[b-n9v0fzzrqo] {
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
    padding: 0.25rem;
}

.saved-filters__name[b-n9v0fzzrqo] {
    border: 1px solid var(--adv-input-border);
    border-radius: 0.45rem;
    padding: 0.4rem 0.5rem;
    font-size: 0.85rem;
    outline: none;
}

.saved-filters__name:focus[b-n9v0fzzrqo] {
    border-color: var(--adv-primary);
    box-shadow: var(--adv-focus-shadow);
}

.saved-filters__default[b-n9v0fzzrqo] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    font-size: 0.82rem;
    color: var(--adv-text-muted);
    cursor: pointer;
}
/* /Components/Features/Shared/AuditHistoryPanel.razor.rz.scp.css */
/* Odoo-style audit "chatter" rail. Uses the global --adv-* brand tokens so it
   matches house style without depending on any page's scoped CSS. */

.audit-panel[b-ht09ng16qs] {
    display: flex;
    flex-direction: column;
    width: 340px;
    max-width: 100%;
    max-height: calc(100vh - 120px);
    background: #fff;
    border: 1px solid var(--adv-border);
    border-radius: 10px;
    box-shadow: var(--adv-shadow-card);
    overflow: hidden;
}

.audit-panel--collapsed[b-ht09ng16qs] {
    width: 44px;
    min-width: 44px;
}

/* Full-width variant for inline/dialog embedding (overrides the fixed rail width).
   The caller wraps this in a RadzenCard, so we shed our own card chrome. */
.audit-panel--inline[b-ht09ng16qs] {
    width: 100%;
    min-width: 0;
    max-height: none;
    border: none;
    box-shadow: none;
    border-radius: 0;
    background: transparent;
}

.audit-panel--inline .audit-panel-body[b-ht09ng16qs] {
    max-height: 380px;
    overflow-y: auto;
}

.audit-panel--inline .audit-panel-header[b-ht09ng16qs] {
    background: transparent;
    border-bottom-color: var(--adv-border);
    padding-left: 0;
    padding-right: 0;
}

/* When the inline panel is collapsed keep it full-width (the rail 44px doesn't apply). */
.audit-panel--inline.audit-panel--collapsed[b-ht09ng16qs] {
    width: 100%;
    min-width: 0;
}

.audit-panel-header[b-ht09ng16qs] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
    padding: 0.6rem 0.75rem;
    border-bottom: 1px solid var(--adv-border);
    background: rgba(var(--adv-primary-rgb), 0.04);
}

.audit-panel-title[b-ht09ng16qs] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    color: var(--adv-primary);
    font-weight: 600;
    font-size: 0.9rem;
    min-width: 0;
}

.audit-panel-title-text[b-ht09ng16qs] {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.audit-panel-actions[b-ht09ng16qs] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
}

.audit-panel-body[b-ht09ng16qs] {
    flex: 1;
    overflow-y: auto;
    padding: 0.75rem 0.5rem 0.5rem;
    display: flex;
    flex-direction: column;
}

.audit-state[b-ht09ng16qs] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.4rem;
    padding: 2rem 1rem;
    color: var(--adv-text-muted);
    text-align: center;
    font-size: 0.82rem;
}

.audit-state--error[b-ht09ng16qs] {
    color: var(--adv-danger);
}

/* ── User filter ── */

.audit-filter-bar[b-ht09ng16qs] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.3rem 0.5rem 0.3rem;
    border-bottom: 1px solid var(--adv-border);
}

.audit-filter-btn[b-ht09ng16qs] {
    all: unset;
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    font-size: 0.8rem;
    color: var(--adv-text-muted);
    cursor: pointer;
    padding: 0.25rem 0.35rem;
    border-radius: 6px;
    transition: color 0.15s;
}

.audit-filter-btn:hover[b-ht09ng16qs] {
    color: var(--adv-primary);
}

.audit-filter-btn--active[b-ht09ng16qs] {
    color: var(--adv-primary);
}

.audit-filter-count[b-ht09ng16qs] {
    font-size: 0.7rem;
    font-weight: 600;
    background: var(--adv-primary);
    color: #fff;
    border-radius: 10px;
    padding: 0 0.35rem;
}

.audit-filter-modal-backdrop[b-ht09ng16qs] {
    position: fixed;
    inset: 0;
    z-index: 1000;
    background: rgba(0, 0, 0, 0.35);
    display: flex;
    align-items: center;
    justify-content: center;
}

.audit-filter-modal[b-ht09ng16qs] {
    background: var(--rz-base-background-color, #fff);
    border-radius: 8px;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.18);
    min-width: 240px;
    max-width: 360px;
    width: 100%;
    overflow: hidden;
}

.audit-filter-modal-header[b-ht09ng16qs] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.75rem 1rem;
    border-bottom: 1px solid var(--adv-border);
}

.audit-filter-modal-title[b-ht09ng16qs] {
    font-weight: 600;
    font-size: 0.9rem;
    color: var(--adv-text);
}

.audit-filter-modal-close[b-ht09ng16qs] {
    all: unset;
    cursor: pointer;
    color: var(--adv-text-muted);
    display: flex;
    align-items: center;
    border-radius: 4px;
    padding: 2px;
    transition: color 0.15s;
}

.audit-filter-modal-close:hover[b-ht09ng16qs] {
    color: var(--adv-primary);
}

.audit-filter-modal-body[b-ht09ng16qs] {
    padding: 0.5rem 0;
}

.audit-filter-user[b-ht09ng16qs] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.35rem 0.75rem;
    cursor: pointer;
    font-size: 0.82rem;
    color: var(--adv-text);
}

.audit-filter-user:hover[b-ht09ng16qs] {
    background: rgba(var(--adv-primary-rgb), 0.05);
}

.audit-avatar--sm[b-ht09ng16qs] {
    width: 20px;
    height: 20px;
    font-size: 0.6rem;
}

/* ── Timeline overrides ── */

/* Remove Radzen's default outer padding so the timeline hugs the panel body. */
[b-ht09ng16qs] .audit-timeline {
    padding: 0;
}

/* Tighten the gap between items — the default Radzen spacing is too open for a panel. */
[b-ht09ng16qs] .audit-timeline .rz-timeline-item {
    padding-bottom: 0.75rem;
}

/* Larger dot and icon in the timeline separator. */
[b-ht09ng16qs] .audit-timeline .rz-timeline-item-dot {
    width: 30px !important;
    height: 30px !important;
}

[b-ht09ng16qs] .audit-timeline .rz-timeline-item-dot .rzi {
    font-size: 18px !important;
}

/* Alternate left-side items: reverse avatar ↔ chevron so avatar stays near the dot. */
[b-ht09ng16qs] .audit-timeline .rz-timeline-item:nth-child(even) .audit-entry-head {
    flex-direction: row-reverse;
}

/* Left-side: mirror body padding and right-align field label + values under the heading. */
[b-ht09ng16qs] .audit-timeline .rz-timeline-item:nth-child(even) .audit-entry-body {
    padding-left: 0;
    padding-right: 0.5rem;
}

[b-ht09ng16qs] .audit-timeline .rz-timeline-item:nth-child(even) .audit-change {
    align-items: flex-end;
    text-align: right;
}

[b-ht09ng16qs] .audit-timeline .rz-timeline-item:nth-child(even) .audit-values {
    justify-content: flex-end;
}

/* ── Single-column mode (phone/tablet full-screen dialog) ──
   Line on the left, every entry stacked the same way. Undo the alternate-side
   mirroring and enlarge everything for touch readability. */
[b-ht09ng16qs] .audit-timeline--single .rz-timeline-item:nth-child(even) .audit-entry-head {
    flex-direction: row;
}
[b-ht09ng16qs] .audit-timeline--single .rz-timeline-item:nth-child(even) .audit-entry-body {
    padding-left: 0.6rem;
    padding-right: 0;
}
[b-ht09ng16qs] .audit-timeline--single .rz-timeline-item:nth-child(even) .audit-change {
    align-items: flex-start;
    text-align: left;
}
[b-ht09ng16qs] .audit-timeline--single .rz-timeline-item:nth-child(even) .audit-values {
    justify-content: flex-start;
}
[b-ht09ng16qs] .audit-timeline--single .rz-timeline-item {
    padding-bottom: 1.1rem;
}
[b-ht09ng16qs] .audit-timeline--single .rz-timeline-item-dot {
    width: 34px !important;
    height: 34px !important;
}
[b-ht09ng16qs] .audit-timeline--single .rz-timeline-item-label {
    flex: 0 0 84px;
    max-width: 84px;
    font-size: 0.82rem;
}
.audit-timeline--single .audit-avatar[b-ht09ng16qs] {
    width: 32px;
    height: 32px;
    font-size: 0.8rem;
}
.audit-timeline--single .audit-actor[b-ht09ng16qs] {
    font-size: 1rem;
    white-space: normal;
}
.audit-timeline--single .audit-action[b-ht09ng16qs] {
    font-size: 0.92rem;
}
.audit-timeline--single .audit-time[b-ht09ng16qs] {
    font-size: 0.82rem;
}
.audit-timeline--single .audit-entry-body[b-ht09ng16qs] {
    padding: 0.5rem 0 0.5rem 0.6rem;
}
.audit-timeline--single .audit-field[b-ht09ng16qs] {
    font-size: 0.9rem;
}
.audit-timeline--single .audit-values[b-ht09ng16qs] {
    font-size: 0.9rem;
    flex-wrap: wrap;
}

/* ── Timeline entry body (ChildContent) ── */

.audit-entry-body[b-ht09ng16qs] {
    padding: 0.35rem 0 0.35rem 0.5rem;
}

.audit-entry-head[b-ht09ng16qs] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 0.25rem;
}

.audit-avatar[b-ht09ng16qs] {
    flex: 0 0 auto;
    width: 26px;
    height: 26px;
    border-radius: 50%;
    background: var(--adv-primary);
    color: #fff;
    font-size: 0.7rem;
    font-weight: 600;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.audit-entry-meta[b-ht09ng16qs] {
    display: flex;
    flex-direction: column;
    line-height: 1.2;
    min-width: 0;
}

.audit-actor[b-ht09ng16qs] {
    font-size: 0.82rem;
    font-weight: 600;
    color: var(--adv-text);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Timestamp in LabelContent — constrain to a fixed column so the center dot
   sits close to the left and the content side takes the remaining space. */
[b-ht09ng16qs] .audit-timeline .rz-timeline-item-label {
    flex: 0 0 70px;
    min-width: 0;
    max-width: 70px;
    font-size: 0.72rem;
    color: var(--adv-text-muted);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.audit-time[b-ht09ng16qs] {
    font-size: 0.72rem;
    color: var(--adv-text-muted);
    white-space: nowrap;
}

.audit-action[b-ht09ng16qs] {
    font-size: 0.82rem;
    color: var(--adv-text);
}

.audit-entry-head--toggle[b-ht09ng16qs] {
    cursor: pointer;
    border-radius: 4px;
    padding: 0.1rem 0.2rem;
    transition: color 0.15s;
}

.audit-entry-head--toggle:hover[b-ht09ng16qs] {
    color: var(--adv-primary);
}

.audit-chevron[b-ht09ng16qs] {
    font-size: 16px !important;
    color: var(--adv-text-muted);
    flex-shrink: 0;
    align-self: center;
    transition: color 0.15s;
}

.audit-entry-head--toggle:hover .audit-chevron[b-ht09ng16qs] {
    color: var(--adv-primary);
}

.audit-changes[b-ht09ng16qs] {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
}

.audit-change[b-ht09ng16qs] {
    display: flex;
    flex-direction: column;
    gap: 0.1rem;
    padding: 0.25rem 0.4rem;
    border-radius: 6px;
    background: rgba(var(--adv-primary-rgb), 0.04);
    font-size: 0.76rem;
}

.audit-field[b-ht09ng16qs] {
    font-size: 0.68rem;
    text-transform: uppercase;
    letter-spacing: 0.02em;
    color: var(--adv-text-muted);
}

.audit-values[b-ht09ng16qs] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.3rem;
}

.audit-from[b-ht09ng16qs] {
    color: var(--adv-text-muted);
    text-decoration: line-through;
}

.audit-arrow[b-ht09ng16qs] {
    font-size: 13px;
    color: var(--adv-text-muted);
}

.audit-to[b-ht09ng16qs] {
    color: var(--adv-text);
    font-weight: 600;
}
/* /Components/Layout/MinimalLayout.razor.rz.scp.css */
.adv-minimal-layout[b-63pobmjn53] {
    min-height: 100vh;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1.5rem;
    box-sizing: border-box;
}

.adv-minimal-topbar[b-63pobmjn53] {
    position: absolute;
    top: 1rem;
    right: 1.5rem;
    z-index: 10;
    pointer-events: none;
}

.adv-minimal-topbar > *[b-63pobmjn53] {
    pointer-events: auto;
}

.adv-minimal-topbar-actions[b-63pobmjn53] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.adv-minimal-body[b-63pobmjn53] {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

@media (max-width: 480px) {
    .adv-minimal-topbar[b-63pobmjn53] {
        top: 0.5rem;
        right: 0.75rem;
    }
}
/* /Components/Layout/ReconnectModal.razor.rz.scp.css */
.components-reconnect-first-attempt-visible[b-imf2z45zkn],
.components-reconnect-repeated-attempt-visible[b-imf2z45zkn],
.components-reconnect-failed-visible[b-imf2z45zkn],
.components-pause-visible[b-imf2z45zkn],
.components-resume-failed-visible[b-imf2z45zkn],
.components-rejoining-animation[b-imf2z45zkn] {
    display: none;
}

#components-reconnect-modal.components-reconnect-show .components-reconnect-first-attempt-visible[b-imf2z45zkn],
#components-reconnect-modal.components-reconnect-show .components-rejoining-animation[b-imf2z45zkn],
#components-reconnect-modal.components-reconnect-paused .components-pause-visible[b-imf2z45zkn],
#components-reconnect-modal.components-reconnect-resume-failed .components-resume-failed-visible[b-imf2z45zkn],
#components-reconnect-modal.components-reconnect-retrying[b-imf2z45zkn],
#components-reconnect-modal.components-reconnect-retrying .components-reconnect-repeated-attempt-visible[b-imf2z45zkn],
#components-reconnect-modal.components-reconnect-retrying .components-rejoining-animation[b-imf2z45zkn],
#components-reconnect-modal.components-reconnect-failed[b-imf2z45zkn],
#components-reconnect-modal.components-reconnect-failed .components-reconnect-failed-visible[b-imf2z45zkn] {
    display: block;
}


#components-reconnect-modal[b-imf2z45zkn] {
    background-color: var(--rz-dialog-background-color);
    width: 20rem;
    margin: 20vh auto;
    padding: 2rem;
    border: 0;
    border-radius: var(--rz-dialog-border-radius);
    box-shadow: var(--rz-dialog-shadow);
    opacity: 0;
    transition: display 0.5s allow-discrete, overlay 0.5s allow-discrete;
    animation: components-reconnect-modal-fadeOutOpacity-b-imf2z45zkn 0.5s both;
    &[open] {
        animation: components-reconnect-modal-slideUp-b-imf2z45zkn 1.5s cubic-bezier(.05, .89, .25, 1.02) 0.3s, components-reconnect-modal-fadeInOpacity-b-imf2z45zkn 0.5s ease-in-out 0.3s;
        animation-fill-mode: both;
    }

}

#components-reconnect-modal[b-imf2z45zkn]::backdrop {
    background-color: var(--rz-dialog-mask-background-color);
    animation: components-reconnect-modal-fadeInOpacity-b-imf2z45zkn 0.5s ease-in-out;
    opacity: 1;
}

@keyframes components-reconnect-modal-slideUp-b-imf2z45zkn {
    0% {
        transform: translateY(30px) scale(0.95);
    }

    100% {
        transform: translateY(0);
    }
}

@keyframes components-reconnect-modal-fadeInOpacity-b-imf2z45zkn {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@keyframes components-reconnect-modal-fadeOutOpacity-b-imf2z45zkn {
    0% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

.components-reconnect-container[b-imf2z45zkn] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
}

#components-reconnect-modal p[b-imf2z45zkn] {
    margin: 0;
    text-align: center;
}

.components-rejoining-animation[b-imf2z45zkn] {
    position: relative;
    width: 80px;
    height: 80px;
}

    .components-rejoining-animation div[b-imf2z45zkn] {
        position: absolute;
        border: 3px solid var(--rz-primary);
        opacity: 1;
        border-radius: 50%;
        animation: components-rejoining-animation-b-imf2z45zkn 1.5s cubic-bezier(0, 0.2, 0.8, 1) infinite;
    }

        .components-rejoining-animation div:nth-child(2)[b-imf2z45zkn] {
            animation-delay: -0.5s;
        }

@keyframes components-rejoining-animation-b-imf2z45zkn {
    0% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 0;
    }

    4.9% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 0;
    }

    5% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 1;
    }

    100% {
        top: 0px;
        left: 0px;
        width: 80px;
        height: 80px;
        opacity: 0;
    }
}
/* /Components/Pages/Accounting/AccountingDashboard.razor.rz.scp.css */
.accounting-dashboard-page[b-115jpj4w01] {
    padding: 1.5rem;
}

.accounting-dashboard-header[b-115jpj4w01] {
    margin-bottom: 1.5rem;
}
/* /Components/Pages/Accounting/AccountingSettings.razor.rz.scp.css */
.settings-sub-page[b-y5f1j5dz34] {
    padding: 0.5rem 0;
}

.settings-sub-header[b-y5f1j5dz34] {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 1.5rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid var(--adv-border);
}

.settings-card-icon[b-y5f1j5dz34] {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.settings-card-icon .rzi[b-y5f1j5dz34],
.settings-card-icon .material-icons[b-y5f1j5dz34] {
    font-size: 24px !important;
}

.settings-tab-content[b-y5f1j5dz34] {
    padding-top: 1rem;
}

.settings-tab-toolbar[b-y5f1j5dz34] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
    margin-bottom: 1rem;
}

/* Grid hover now handled globally in site.css */
/* /Components/Pages/Accounting/BankStatementDetail.razor.rz.scp.css */
.bank-statement-detail-page[b-qoazi88zw8] {
    padding: 0.5rem 0;
}

.bs-detail-header[b-qoazi88zw8] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    flex-wrap: wrap;
    margin-bottom: 1.25rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid var(--adv-border);
}

.bs-header-top[b-qoazi88zw8] {
    display: flex;
    align-items: center;
    gap: 1rem;
    min-width: 0;
    flex: 1;
}

.bs-header-title[b-qoazi88zw8] {
    min-width: 0;
    overflow: hidden;
}

.bs-header-actions[b-qoazi88zw8] {
    flex-shrink: 0;
}

.bs-detail-icon[b-qoazi88zw8] {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    background: rgba(74, 159, 213, 0.12);
    color: var(--adv-primary);
}

.bs-detail-icon .rzi[b-qoazi88zw8],
.bs-detail-icon .material-icons[b-qoazi88zw8] {
    font-size: 24px !important;
}

/* Grid hover now handled globally in site.css */

@media (max-width: 768px) {
    .bs-detail-header[b-qoazi88zw8] {
        flex-direction: column;
        align-items: flex-start;
    }

    .bs-header-actions[b-qoazi88zw8] {
        width: 100%;
    }
}
/* /Components/Pages/Accounting/BankStatements.razor.rz.scp.css */
.bank-statements-header[b-0pzrktjcbf] {
    margin-bottom: 1.25rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid var(--adv-border);
}

.criteria-card[b-0pzrktjcbf] {
    background: var(--rz-base-background-color);
    border: 1px solid var(--adv-border);
    border-radius: 8px;
    padding: 1rem 1.25rem;
}

/* Grid hover/pager/footer now handled globally in site.css */
/* /Components/Pages/Accounting/CreateInvoice.razor.rz.scp.css */
.create-invoice-page[b-jfhl7fguax] {
    padding: 1.5rem;
}

.create-invoice-header[b-jfhl7fguax] {
    margin-bottom: 1.5rem;
}
/* /Components/Pages/Accounting/FiscalForms.razor.rz.scp.css */
.fiscal-forms-page[b-l2gvjcfql8] {
    padding: 1.5rem;
}

.fiscal-forms-header[b-l2gvjcfql8] {
    margin-bottom: 1.5rem;
}
/* /Components/Pages/Accounting/InvoiceDetail.razor.rz.scp.css */
.invoice-detail-page[b-cyelych1wg] {
    padding: 0.5rem 0;
}
/* /Components/Pages/Accounting/Invoices.razor.rz.scp.css */
.invoices-header[b-xfi8biegjg] {
    margin-bottom: 1.25rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid var(--adv-border);
}

.criteria-card[b-xfi8biegjg] {
    background: var(--rz-base-background-color);
    border: 1px solid var(--adv-border);
    border-radius: 8px;
    padding: 1rem 1.25rem;
}

/* Grid hover/pager/footer now handled globally in site.css */
/* /Components/Pages/Accounting/Journals.razor.rz.scp.css */
.journals-page[b-9azxngqxyi] {
    padding: 1.5rem;
}

.journals-header[b-9azxngqxyi] {
    margin-bottom: 1.5rem;
}
/* /Components/Pages/Accounting/Provisions.razor.rz.scp.css */
.provisions-header[b-pco6hcvdaw] {
    margin-bottom: 1.25rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid var(--adv-border);
}

.criteria-card[b-pco6hcvdaw] {
    background: var(--rz-base-background-color);
    border: 1px solid var(--adv-border);
    border-radius: 8px;
    padding: 1rem 1.25rem;
}

/* Grid hover/pager/footer now handled globally in site.css */
/* /Components/Pages/Accounting/Reports.razor.rz.scp.css */
.reports-page[b-1yay0727cf] {
    padding: 1.5rem;
}

.reports-header[b-1yay0727cf] {
    margin-bottom: 1.5rem;
}
/* /Components/Pages/Accounting/VatDeclarations.razor.rz.scp.css */
.vat-declarations-page[b-graotfpsi7] {
    padding: 1.5rem;
}

.vat-declarations-header[b-graotfpsi7] {
    margin-bottom: 1.5rem;
}
/* /Components/Pages/Calculations/CalcPage.razor.rz.scp.css */
.settings-header[b-uxfqa1z9l2] {
    margin-bottom: 1.25rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid var(--adv-border);
}

.settings-card[b-uxfqa1z9l2] {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    transition: box-shadow 0.2s, transform 0.2s;
    cursor: pointer;
}

.settings-card:hover[b-uxfqa1z9l2] {
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.1), 0 0 1px rgba(0, 0, 0, 0.1) !important;
    transform: translateY(-2px);
}

.settings-card-icon[b-uxfqa1z9l2] {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 0.75rem;
}

.settings-card-icon .rzi[b-uxfqa1z9l2],
.settings-card-icon .material-icons[b-uxfqa1z9l2] {
    font-size: 24px !important;
}

.settings-card-items[b-uxfqa1z9l2] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
    margin-top: 0.5rem;
}

.settings-card-tag[b-uxfqa1z9l2] {
    display: inline-block;
    padding: 0.1rem 0.45rem;
    border-radius: 4px;
    font-size: 0.7rem;
    font-weight: 500;
    background: var(--rz-base-200, rgba(0, 0, 0, 0.04));
    color: var(--adv-text-muted);
}
/* /Components/Pages/Calculations/Calculations.razor.rz.scp.css */
/* All shared calculation styles are in site.css */
/* Grid hover/pager now handled globally in site.css */
/* /Components/Pages/Calculations/Reference/RatesPage.razor.rz.scp.css */
.rates-stat-card[b-nscheb7jgb] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    padding: 1.5rem !important;
    border-top: 3px solid transparent;
}

.rates-stat-card--primary[b-nscheb7jgb] { border-top-color: var(--adv-primary); }
.rates-stat-card--warning[b-nscheb7jgb]  { border-top-color: var(--adv-warning); }
.rates-stat-card--danger[b-nscheb7jgb]   { border-top-color: var(--adv-danger); }
.rates-stat-card--success[b-nscheb7jgb]  { border-top-color: var(--adv-success); }
.rates-stat-card--purple[b-nscheb7jgb]   { border-top-color: var(--adv-purple, #7c3aed); }

.rates-stat-label[b-nscheb7jgb] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    font-size: 0.78rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--adv-text-muted);
    margin-bottom: 0.5rem;
}

.rates-stat-label .rzi[b-nscheb7jgb],
.rates-stat-label .material-icons[b-nscheb7jgb] {
    font-size: 1rem !important;
}

.rates-stat-value[b-nscheb7jgb] {
    font-size: 2.5rem;
    font-weight: 700;
    line-height: 1;
    font-variant-numeric: tabular-nums;
    color: var(--rz-text-color);
}

.rates-stat-unit[b-nscheb7jgb] {
    font-size: 1.25rem;
    font-weight: 500;
    margin-left: 0.1rem;
    color: var(--adv-text-muted);
}

.rates-stat-since[b-nscheb7jgb] {
    font-size: 0.8rem;
    color: var(--adv-text-muted);
    margin-top: 0.35rem;
}

.rates-section-dot[b-nscheb7jgb] {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    flex-shrink: 0;
}

.rates-section-dot--primary[b-nscheb7jgb] { background: var(--adv-primary); }
.rates-section-dot--warning[b-nscheb7jgb]  { background: var(--adv-warning); }
.rates-section-dot--danger[b-nscheb7jgb]   { background: var(--adv-danger); }
.rates-section-dot--success[b-nscheb7jgb]  { background: var(--adv-success); }
.rates-section-dot--purple[b-nscheb7jgb]   { background: var(--adv-purple, #7c3aed); }

.rates-section-title[b-nscheb7jgb] {
    display: block;
    margin-bottom: 0.5rem;
    font-size: 0.7rem;
    letter-spacing: 0.08em;
}

.rates-index-stat-card[b-nscheb7jgb] {
    padding: 1.5rem !important;
}

.rates-index-half[b-nscheb7jgb] {
    padding: 0.75rem 1.25rem;
}

.rates-index-half--right[b-nscheb7jgb] {
    border-left: 1px solid var(--adv-border);
}

@media (max-width: 767px) {
    .rates-index-half--right[b-nscheb7jgb] {
        border-left: none;
        border-top: 1px solid var(--adv-border);
        margin-top: 1rem;
        padding-top: 1rem;
    }
}

.rates-rate-cell[b-nscheb7jgb] {
    font-variant-numeric: tabular-nums;
    font-weight: 600;
}

/* ── Tab-card row ── */
.rates-tab-row[b-nscheb7jgb] {
    display: flex;
    gap: 1rem;
    flex-wrap: wrap;
}

.rates-tab-row[b-nscheb7jgb]  .rz-card {
    flex: 1 1 0;
    min-width: 130px;
    cursor: pointer;
    padding: 1rem 1.25rem !important;
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.rates-tab-icon[b-nscheb7jgb] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2rem;
    height: 2rem;
    border-radius: 50%;
    margin-bottom: 0.4rem;
    font-size: 1rem;
}

.rates-tab-value[b-nscheb7jgb] {
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1;
    font-variant-numeric: tabular-nums;
    color: var(--rz-text-color);
    margin-top: 0.25rem;
}

.rates-tab-unit[b-nscheb7jgb] {
    font-size: 1rem;
    font-weight: 500;
    color: var(--adv-text-muted);
    margin-left: 0.1rem;
}

/* ── Active card state ── */
.index-card-active[b-nscheb7jgb] {
    outline: 2px solid var(--adv-primary);
    outline-offset: -2px;
    background: var(--adv-primary-lighter) !important;
}

/* ── Detail section ── */
.index-detail-section[b-nscheb7jgb] {
    margin-top: 1.5rem;
    padding: 1.25rem;
    background: var(--rz-base-background-color);
    border: 1px solid var(--adv-border);
    border-radius: var(--rz-border-radius);
}
/* /Components/Pages/Calendar/Calendar.razor.rz.scp.css */
.calendar-header[b-fytf7cq46d] {
    margin-bottom: 1.25rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid var(--adv-border);
}

/* The Outlook layout (#2037, OUTLOO-223): the calendar pane on the left, the grid beside it. */
.calendar-layout[b-fytf7cq46d] {
    display: grid;
    grid-template-columns: 15.5rem minmax(0, 1fr);
    gap: 1.25rem;
    align-items: start;
}

.calendar-layout--collapsed[b-fytf7cq46d] {
    grid-template-columns: minmax(0, 1fr);
}

.calendar-layout-main[b-fytf7cq46d] {
    min-width: 0;
}

@media (max-width: 992px) {
    .calendar-layout[b-fytf7cq46d] {
        grid-template-columns: minmax(0, 1fr);
    }

    .calendar-layout-pane[b-fytf7cq46d] {
        order: 1;
    }
}

/* Scrollable panels */
.calendar-scroll-panel[b-fytf7cq46d] {
    max-height: calc(100vh - 14rem);
    overflow-y: auto;
    padding-right: 0.25rem;
}

@media (max-width: 768px) {
    .calendar-scroll-panel[b-fytf7cq46d] {
        max-height: none;
        overflow-y: visible;
    }
}
/* /Components/Pages/Cases/CaseDetail.razor.rz.scp.css */
/* .case-detail-page inherits the standard module inset from the global
   `.adv-content > [class*="-page"]` rule (site.css) — no scoped padding
   override, so the breadcrumb, header, KPI datablocks and tabs all share
   the same inset as every other module. (Print padding handled below.) */

/* ── Header ── */
.case-detail-header[b-rez39yeh8i] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    flex-wrap: wrap;
    margin-bottom: 1.25rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid var(--adv-border);
}

.case-header-top[b-rez39yeh8i] {
    display: flex;
    align-items: center;
    gap: 1rem;
    min-width: 0;
    flex: 1;
}

.case-header-title[b-rez39yeh8i] {
    min-width: 0;
    overflow: hidden;
}

.case-header-name[b-rez39yeh8i] {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.case-header-actions[b-rez39yeh8i] {
    flex-shrink: 0;
}

.case-detail-icon[b-rez39yeh8i] {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    background: rgba(74, 159, 213, 0.12);
    color: var(--adv-primary);
}

.case-detail-icon .rzi[b-rez39yeh8i],
.case-detail-icon .material-icons[b-rez39yeh8i] {
    font-size: 24px !important;
}

/* ── Memo warning alert ── */
.case-memo-alert[b-rez39yeh8i] {
    margin-bottom: 1.25rem;
}

/* ── Tabs ── */
/* Wrap instead of scroll so the tab strip never shows a horizontal scrollbar
   and the last tab (Fiche) is never clipped off-screen. Tighter horizontal
   padding lets all eight tabs sit on one row at typical desktop widths; they
   wrap to a second row only when the viewport is genuinely too narrow. #1756 */
[b-rez39yeh8i] .rz-tabview-nav {
    flex-wrap: wrap;
    overflow-x: visible;
    row-gap: 0.25rem;
}

[b-rez39yeh8i] .rz-tabview-nav li > a {
    /* !important to beat Radzen's higher-specificity default (1rem) so all
       eight tabs fit one row at desktop widths; flex-wrap above is the safety
       net that keeps narrower viewports scrollbar-free rather than clipped. */
    padding-left: 0.625rem !important;
    padding-right: 0.625rem !important;
}

[b-rez39yeh8i] .case-tab-content {
    padding-top: 1.25rem;
}

[b-rez39yeh8i] .case-tab-toolbar {
    margin-bottom: 1rem;
}

/* ── Case fields (read-only display) ── */
[b-rez39yeh8i] .case-field {
    margin-bottom: 1rem;
}

[b-rez39yeh8i] .case-field-label {
    display: block;
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--adv-text-muted);
    text-transform: uppercase;
    letter-spacing: 0.04em;
    margin-bottom: 0.25rem;
}

[b-rez39yeh8i] .case-field-value {
    font-size: 0.95rem;
    color: var(--adv-text);
    font-weight: 500;
    word-break: break-word;
}

/* Empty field values */
[b-rez39yeh8i] .case-field-value:empty::after,
[b-rez39yeh8i] .case-field-value[data-empty] {
    color: var(--adv-text-muted);
    font-weight: 400;
}

/* ── Parties ── */
[b-rez39yeh8i] .case-party-item {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.65rem 0.5rem;
    border-radius: 8px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.04);
    transition: background 0.15s;
}

[b-rez39yeh8i] .case-party-item:last-child {
    border-bottom: none;
}

[b-rez39yeh8i] .case-party-item:hover {
    background: rgba(74, 159, 213, 0.04);
}

[b-rez39yeh8i] .case-party-icon {
    width: 38px;
    height: 38px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

[b-rez39yeh8i] .case-party-icon .rzi,
[b-rez39yeh8i] .case-party-icon .material-icons {
    font-size: 18px !important;
}

[b-rez39yeh8i] .case-party-details {
    display: flex;
    flex-direction: column;
    flex: 1;
    min-width: 0;
}

[b-rez39yeh8i] .case-party-name {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--adv-text);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

[b-rez39yeh8i] .case-party-role {
    font-size: 0.75rem;
    color: var(--adv-text-muted);
    margin-top: 0.1rem;
}

/* ── Party role chips (one per assigned role) ── */
[b-rez39yeh8i] .case-party-roles {
    display: flex;
    flex-wrap: wrap;
    gap: 0.25rem;
    margin-top: 0.2rem;
}

[b-rez39yeh8i] .case-role-chip {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.1rem 0.45rem;
    border-radius: 10px;
    font-size: 0.72rem;
    font-weight: 600;
    line-height: 1.45;
}

[b-rez39yeh8i] .case-role-chip-remove {
    cursor: pointer;
    font-weight: 700;
    opacity: 0.55;
    transition: opacity 0.15s;
}

[b-rez39yeh8i] .case-role-chip-remove:hover {
    opacity: 1;
}

/* ── Memos ── */
[b-rez39yeh8i] .case-memo-item {
    padding: 0.75rem 0.75rem 0.75rem 1rem;
    border-radius: 8px;
    background: var(--rz-base-200, rgba(0, 0, 0, 0.025));
    margin-bottom: 0.5rem;
    border-left: 3px solid var(--adv-primary-light);
    transition: background 0.15s;
}

[b-rez39yeh8i] .case-memo-item:hover {
    background: rgba(74, 159, 213, 0.05);
}

[b-rez39yeh8i] .case-memo-item.case-memo-warning {
    border-left-color: var(--adv-warning);
}

[b-rez39yeh8i] .case-memo-done {
    opacity: 0.5;
    border-left-color: var(--adv-success) !important;
}

[b-rez39yeh8i] .case-memo-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 0.35rem;
}

[b-rez39yeh8i] .case-memo-author {
    font-size: 0.8rem;
    font-weight: 600;
    color: var(--adv-primary-dark);
}

[b-rez39yeh8i] .case-memo-date {
    font-size: 0.72rem;
    color: var(--adv-text-muted);
}

[b-rez39yeh8i] .case-memo-title {
    display: block;
    font-size: 0.82rem;
    font-weight: 600;
    color: var(--adv-text);
    margin-top: 2px;
}

[b-rez39yeh8i] .case-memo-text {
    display: block;
    font-size: 0.85rem;
    color: var(--adv-text);
    line-height: 1.55;
}

/* ── Memo Split Layout ── */
[b-rez39yeh8i] .memo-split-layout {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
    min-height: 0;
}

[b-rez39yeh8i] .memo-panel {
    display: flex;
    flex-direction: column;
    max-height: 70vh;
    min-width: 0;
}

[b-rez39yeh8i] .memo-scroll {
    flex: 1;
    overflow-y: auto;
    min-height: 0;
    padding-right: 0.25rem;
}

/* Selected memo highlight */
[b-rez39yeh8i] .case-memo-selected {
    border-left-color: var(--adv-primary) !important;
    background: rgba(74, 159, 213, 0.08) !important;
    box-shadow: inset 0 0 0 1px rgba(74, 159, 213, 0.2);
}

/* ── Selected memo card (top of remarks panel) ── */
[b-rez39yeh8i] .remark-memo-card {
    padding: 0.65rem 0.75rem;
    margin: 0 0 0.75rem;
    border-radius: 8px;
    background: rgba(74, 159, 213, 0.06);
    border-left: 3px solid var(--adv-primary);
    flex-shrink: 0;
}

[b-rez39yeh8i] .remark-memo-card-warning {
    border-left-color: var(--adv-warning);
}

[b-rez39yeh8i] .remark-memo-card-done {
    opacity: 0.6;
    border-left-color: var(--adv-success);
}

/* ── Memo Remarks ── */
[b-rez39yeh8i] .case-memo-remark-item {
    padding: 0.6rem 0.65rem;
    margin-bottom: 0.4rem;
    border-radius: 6px;
    background: var(--rz-base-200, rgba(0, 0, 0, 0.025));
    position: relative;
    border-left: 2px solid rgba(74, 159, 213, 0.15);
}

[b-rez39yeh8i] .case-memo-remark-item:hover {
    background: rgba(74, 159, 213, 0.06);
}

[b-rez39yeh8i] .case-memo-remark-item:hover .case-memo-remark-actions {
    opacity: 1;
}

[b-rez39yeh8i] .case-memo-remark-memo-ref {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.68rem;
    font-weight: 600;
    color: var(--adv-primary);
    margin-bottom: 0.3rem;
    cursor: pointer;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

[b-rez39yeh8i] .case-memo-remark-memo-ref:hover {
    text-decoration: underline;
}

[b-rez39yeh8i] .case-memo-remark-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 0.2rem;
}

[b-rez39yeh8i] .case-memo-remark-author {
    font-size: 0.72rem;
    font-weight: 600;
    color: var(--adv-primary-dark);
}

[b-rez39yeh8i] .case-memo-remark-date {
    font-size: 0.68rem;
    color: var(--adv-text-muted);
}

[b-rez39yeh8i] .case-memo-remark-content {
    font-size: 0.8rem;
    color: var(--adv-text);
    line-height: 1.45;
}

[b-rez39yeh8i] .case-memo-remark-actions {
    display: flex;
    gap: 0.15rem;
    position: absolute;
    top: 0.35rem;
    right: 0.35rem;
    opacity: 0;
    transition: opacity 0.15s;
}

[b-rez39yeh8i] .case-memo-remark-add {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-top: 0.5rem;
    padding: 0.5rem 0.25rem 0.25rem;
    border-top: 1px solid rgba(0, 0, 0, 0.06);
    position: sticky;
    bottom: 0;
    background: inherit;
}

/* ── Tags ── */
.case-tags-list[b-rez39yeh8i] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.case-tag-chip[b-rez39yeh8i] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0.35rem 0.7rem;
    border-radius: 16px;
    font-size: 0.8rem;
    font-weight: 600;
    color: var(--adv-text);
    transition: opacity 0.15s;
}

.case-tag-chip:hover[b-rez39yeh8i] {
    opacity: 0.8;
}

/* ── KPI tags ── */
/* ::deep so these classes apply both in CaseDetail.razor's own KPI card AND
   in child components that render tag chips (CaseDetailGeneralTab). Without
   ::deep, Blazor scopes them to CaseDetail.razor only and the chips render
   unstyled in the General tab. */
[b-rez39yeh8i] .case-kpi-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 0.3rem;
    margin-top: 0.35rem;
}

[b-rez39yeh8i] .case-kpi-tag {
    display: inline-block;
    padding: 0.2rem 0.55rem;
    border-radius: 12px;
    font-size: 0.72rem;
    font-weight: 600;
    color: var(--adv-text);
    white-space: nowrap;
}

/* ── Totals bar ── */
[b-rez39yeh8i] .case-total-bar {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 0.75rem;
    padding: 0.85rem 1.25rem;
    margin-top: 0.5rem;
    background: var(--adv-row-hover);
    border-radius: 0 0 10px 10px;
    border-top: 2px solid rgba(74, 159, 213, 0.15);
    font-size: 0.9rem;
}

/* Grid hover now handled globally in site.css */

/* ── Print-only header (hidden on screen) ── */
.print-only-header[b-rez39yeh8i] {
    display: none;
}

/* ── Responsive ── */
@media (max-width: 768px) {
    .case-detail-header[b-rez39yeh8i] {
        flex-direction: column;
        align-items: flex-start;
    }

    .case-header-actions[b-rez39yeh8i] {
        width: 100%;
    }

    .case-detail-icon[b-rez39yeh8i] {
        width: 40px;
        height: 40px;
        border-radius: 10px;
    }

    .case-detail-icon .rzi[b-rez39yeh8i],
    .case-detail-icon .material-icons[b-rez39yeh8i] {
        font-size: 20px !important;
    }

    [b-rez39yeh8i] .case-memo-header {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.2rem;
    }

    [b-rez39yeh8i] .memo-split-layout {
        grid-template-columns: 1fr;
    }

    [b-rez39yeh8i] .memo-panel {
        max-height: 50vh;
    }
}

/* ── Dark theme ── */
:global(.dark-theme) .case-detail-icon[b-rez39yeh8i] {
    background: rgba(74, 159, 213, 0.15);
}

[b-rez39yeh8i] :global(.dark-theme) .case-party-item {
    border-bottom-color: rgba(255, 255, 255, 0.04);
}

[b-rez39yeh8i] :global(.dark-theme) .case-party-item:hover {
    background: rgba(74, 159, 213, 0.06);
}

[b-rez39yeh8i] :global(.dark-theme) .case-memo-item {
    background: rgba(255, 255, 255, 0.03);
}

[b-rez39yeh8i] :global(.dark-theme) .case-memo-item:hover {
    background: rgba(74, 159, 213, 0.08);
}

[b-rez39yeh8i] :global(.dark-theme) .case-memo-remark-item {
    background: rgba(255, 255, 255, 0.03);
}

[b-rez39yeh8i] :global(.dark-theme) .case-memo-remark-item:hover {
    background: rgba(74, 159, 213, 0.08);
}

[b-rez39yeh8i] :global(.dark-theme) .remark-memo-card {
    background: rgba(74, 159, 213, 0.1);
}

[b-rez39yeh8i] :global(.dark-theme) .case-memo-selected {
    background: rgba(74, 159, 213, 0.12) !important;
    box-shadow: inset 0 0 0 1px rgba(74, 159, 213, 0.3);
}

[b-rez39yeh8i] :global(.dark-theme) .case-memo-remark-add {
    border-top-color: rgba(255, 255, 255, 0.06);
}

[b-rez39yeh8i] :global(.dark-theme) .case-total-bar {
    background: linear-gradient(135deg, #182030 0%, #1a2436 100%);
    border-top-color: rgba(74, 159, 213, 0.2);
}

/* ── Print styles ── */
@media print {
    .print-only-header[b-rez39yeh8i] {
        display: block;
        margin-bottom: 1rem;
        padding-bottom: 0.75rem;
        border-bottom: 2px solid #333;
    }

    .print-only-header h1[b-rez39yeh8i] {
        font-size: 1.5rem;
        margin: 0 0 0.25rem;
    }

    .print-only-header span[b-rez39yeh8i] {
        font-size: 0.85rem;
        color: #666;
    }

    .no-print[b-rez39yeh8i],
    .case-tab-toolbar[b-rez39yeh8i],
    .adv-breadcrumb[b-rez39yeh8i] {
        display: none !important;
    }

    /* Hide action columns in grids */
    [b-rez39yeh8i] .rz-datatable .rz-datatable-thead th:last-child,
    [b-rez39yeh8i] .rz-datatable .rz-datatable-data td:last-child {
        display: none !important;
    }

    .case-detail-header[b-rez39yeh8i] {
        border-bottom: none;
        margin-bottom: 0.5rem;
        padding-bottom: 0;
    }

    .case-detail-page[b-rez39yeh8i] {
        padding: 0;
    }

    .case-total-bar[b-rez39yeh8i] {
        background: none;
        border-top: 1px solid #ccc;
    }

    .case-memo-item[b-rez39yeh8i] {
        border-left: 2px solid #999;
    }
}

/* ── Audit history section ── */
/* Match the horizontal inset of the tab panel (rz-tabs-padding = 1.25rem on each side)
   so the card aligns with the cards inside the tabs. */
.case-audit-section[b-rez39yeh8i] {
    margin-left: var(--rz-tabs-padding, 1.25rem);
    margin-right: var(--rz-tabs-padding, 1.25rem);
}

.case-audit-card-header[b-rez39yeh8i] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    cursor: pointer;
    user-select: none;
}

.case-audit-card-header:hover[b-rez39yeh8i] {
    opacity: 0.8;
}

.case-audit-card-icon[b-rez39yeh8i] {
    color: var(--adv-primary);
}
/* /Components/Pages/Cases/CaseHistory.razor.rz.scp.css */
.case-history-page[b-qrjyg3lidy] {
    max-width: 860px;
    margin: 0 auto;
    padding: 2rem 1.5rem;
}

.case-history-header[b-qrjyg3lidy] {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 1.75rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid var(--adv-border);
}

.case-history-icon[b-qrjyg3lidy] {
    font-size: 2rem !important;
    color: var(--adv-primary);
    flex-shrink: 0;
}

.case-history-title[b-qrjyg3lidy] {
    margin: 0;
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--adv-text);
    line-height: 1.2;
}

.case-history-subtitle[b-qrjyg3lidy] {
    font-size: 0.875rem;
    color: var(--adv-text-muted);
    margin-top: 0.2rem;
    display: block;
}
/* /Components/Pages/Cases/CaseItems.razor.rz.scp.css */
/* ============================================================
   Cases overview — header + unified filter bar (#1756)
   Tokens only (no hardcoded colours). Radzen-rendered internals
   are reached with ::deep from scoped HTML wrappers.
   ============================================================ */

.cases-page[b-h9x1ol69cx] {
    position: relative;
}

/* ── Page header: title + count + primary actions ── */
.cases-header[b-h9x1ol69cx] {
    margin-bottom: 1rem;
}

.cases-header__bar[b-h9x1ol69cx] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    flex-wrap: wrap;
    margin-top: 0.5rem;
}

.cases-header__title[b-h9x1ol69cx] {
    display: flex;
    align-items: center;
    gap: 0.6rem;
}

.cases-header__actions[b-h9x1ol69cx] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

/* ── Odoo-style facet filter bar + saved filters ──
   Single row: the facet bar grows to fill, the saved-filters menu sits at the
   end. The card chrome that used to wrap the segmented status control is gone —
   the facet bar carries its own field styling (CaseFilterBar.razor.css). */
.cases-filterbar[b-h9x1ol69cx] {
    display: flex;
    align-items: center;
    gap: 1rem;
    flex-wrap: wrap;
    margin-bottom: 1rem;
    /* The backdrop-filter below makes this a stacking context. Without an explicit
       z-index, the later frosted-glass datagrid (its own backdrop-filter stacking
       context) paints over the open facet popup — the popup's inner z-index:1002
       can't escape this wrapper. Elevate the whole bar above the grid. #1799 */
    position: relative;
    z-index: 10;
    background: var(--adv-surface-glass);
    -webkit-backdrop-filter: blur(var(--adv-glass-blur));
    backdrop-filter: blur(var(--adv-glass-blur));
    border: 1px solid var(--adv-glass-border);
    border-radius: 0.85rem;
    box-shadow: var(--adv-shadow-card);
}

.cases-filterbar__bar[b-h9x1ol69cx] {
    flex: 1 1 320px;
    min-width: 0;
}

/* ── Responsive ── */
@media (max-width: 640px) {
    .cases-filterbar__bar[b-h9x1ol69cx] {
        flex-basis: 100%;
    }
}
/* /Components/Pages/Cases/CaseLocations.razor.rz.scp.css */
.locations-header[b-udxfmq5p6o] {
    margin-bottom: 1.25rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid var(--adv-border);
}

.locations-toolbar[b-udxfmq5p6o] {
    margin-bottom: 1rem;
}

/* Grid hover/pager now handled globally in site.css */
/* /Components/Pages/Cases/RecentlyDeletedPanel.razor.rz.scp.css */
.rdp-panel[b-bhl2cwisyf] {
    position: fixed;
    top: 72px; /* below the .adv-topbar (measured 72px) */
    right: 0;
    bottom: 0;
    width: 420px;
    background: var(--rz-base-background-color, #fff);
    border-left: 1px solid var(--rz-border-color);
    box-shadow: -4px 0 16px rgba(0, 0, 0, 0.08);
    z-index: 100;
    display: flex;
    flex-direction: column;
    padding: 1rem;
    overflow-y: auto;
}

.rdp-panel__header[b-bhl2cwisyf] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 0.25rem;
}

.rdp-panel__title[b-bhl2cwisyf] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    font-weight: 600;
    font-size: 0.95rem;
}

.rdp-panel__icon[b-bhl2cwisyf] {
    color: var(--rz-danger);
    font-size: 1.1rem;
}

.rdp-panel__subtitle[b-bhl2cwisyf] {
    font-size: 0.78rem;
    color: var(--rz-text-secondary-color);
    margin-bottom: 1rem;
}

.rdp-panel__loading[b-bhl2cwisyf],
.rdp-panel__empty[b-bhl2cwisyf] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.5rem;
    padding: 2rem 0;
    color: var(--rz-text-secondary-color);
    font-size: 0.85rem;
}

.rdp-panel__empty-icon[b-bhl2cwisyf] {
    font-size: 2rem;
    opacity: 0.4;
}

.rdp-panel__table[b-bhl2cwisyf] {
    display: flex;
    flex-direction: column;
    gap: 0;
    font-size: 0.82rem;
}

.rdp-panel__table-header[b-bhl2cwisyf],
.rdp-panel__table-row[b-bhl2cwisyf] {
    display: grid;
    grid-template-columns: 80px 1fr 80px 70px;
    gap: 0.5rem;
    align-items: center;
    padding: 0.4rem 0;
    border-bottom: 1px solid var(--rz-border-color);
}

.rdp-panel__table-header[b-bhl2cwisyf] {
    font-weight: 600;
    color: var(--rz-text-secondary-color);
    font-size: 0.78rem;
    text-transform: uppercase;
    letter-spacing: 0.02em;
}

.rdp-panel__name-cell[b-bhl2cwisyf] {
    display: flex;
    flex-direction: column;
    overflow: hidden;
    gap: 0.1rem;
}

.rdp-panel__name[b-bhl2cwisyf] {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.rdp-panel__deleted-by[b-bhl2cwisyf] {
    font-size: 0.72rem;
    color: var(--rz-text-secondary-color);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.rdp-panel__number[b-bhl2cwisyf] {
    color: var(--adv-primary);
    font-weight: 500;
}

.rdp-panel__date[b-bhl2cwisyf] {
    color: var(--rz-text-secondary-color);
    font-size: 0.78rem;
}

.rdp-panel__action[b-bhl2cwisyf] {
    display: flex;
    justify-content: flex-end;
}
/* /Components/Pages/Parties/AddContactDialog.razor.rz.scp.css */
.add-contact-choice-card[b-j9uvmtc38g] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1rem 1.25rem;
    border: 1px solid var(--adv-border);
    border-radius: 8px;
    cursor: pointer;
    transition: background 0.15s, border-color 0.15s;
}

.add-contact-choice-card:hover[b-j9uvmtc38g] {
    background: rgba(74, 159, 213, 0.04);
    border-color: var(--adv-primary);
}

.add-contact-choice-icon[b-j9uvmtc38g] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    border-radius: 10px;
    flex-shrink: 0;
}

.add-contact-choice-text[b-j9uvmtc38g] {
    display: flex;
    flex-direction: column;
    gap: 0.15rem;
    flex: 1;
}

.add-contact-choice-title[b-j9uvmtc38g] {
    font-weight: 600;
    font-size: 0.9rem;
}

.add-contact-choice-desc[b-j9uvmtc38g] {
    font-size: 0.8rem;
    color: var(--adv-text-muted);
}

.add-contact-results[b-j9uvmtc38g] {
    max-height: 280px;
    overflow-y: auto;
    border: 1px solid var(--adv-border);
    border-radius: 6px;
}

.add-contact-result-row[b-j9uvmtc38g] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    padding: 0.6rem 0.75rem;
    cursor: pointer;
    transition: background 0.15s;
    border-bottom: 1px solid var(--adv-border);
}

.add-contact-result-row:last-child[b-j9uvmtc38g] {
    border-bottom: none;
}

.add-contact-result-row:hover[b-j9uvmtc38g] {
    background: rgba(74, 159, 213, 0.06);
}

.add-contact-result-row.add-contact-result-selected[b-j9uvmtc38g] {
    background: rgba(39, 174, 96, 0.06);
}

.add-contact-result-info[b-j9uvmtc38g] {
    flex: 1;
    min-width: 0;
}

.add-contact-result-name[b-j9uvmtc38g] {
    font-size: 0.85rem;
    font-weight: 600;
    color: var(--adv-primary-dark);
}
/* /Components/Pages/Parties/AddPartyDetailDialog.razor.rz.scp.css */
/* Global field search box (step 1). #2018 */
.add-detail-search[b-lvy7uc1sht] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.4rem 0.75rem;
    margin-bottom: 0.75rem;
    border: 1px solid rgba(0, 0, 0, 0.12);
    border-radius: 8px;
    background: rgba(0, 0, 0, 0.02);
}

.add-detail-search:focus-within[b-lvy7uc1sht] {
    border-color: var(--adv-primary);
}

.add-detail-search-icon[b-lvy7uc1sht] {
    flex: 0 0 auto;
    font-size: 1.1rem;
}

.add-detail-search-input[b-lvy7uc1sht] {
    flex: 1 1 auto;
    min-width: 0;
    border: none;
    outline: none;
    background: transparent;
    color: var(--adv-text);
    font-size: 0.85rem;
}

.add-detail-search-input[b-lvy7uc1sht]::placeholder {
    color: var(--adv-text-muted);
}

/* Field name + its group as muted subtext, in the flat search results. */
.add-detail-option-text[b-lvy7uc1sht] {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.add-detail-option-sub[b-lvy7uc1sht] {
    font-size: 0.72rem;
    font-weight: 400;
    color: var(--adv-text-muted);
}

/* Empty state when no field matches the search. */
.add-detail-empty[b-lvy7uc1sht] {
    padding: 1rem 0.75rem;
    font-size: 0.85rem;
    color: var(--adv-text-muted);
    text-align: center;
}

:global(.dark-theme) .add-detail-search[b-lvy7uc1sht] {
    border-color: rgba(255, 255, 255, 0.12);
    background: rgba(255, 255, 255, 0.03);
}

/* Two-column field picker (step 1) — groups left, items right. #2018 */
.add-detail-columns[b-lvy7uc1sht] {
    display: flex;
    gap: 1rem;
    align-items: stretch;
}

.add-detail-pane[b-lvy7uc1sht] {
    flex: 1 1 0;
    min-width: 0;
    border: 1px solid rgba(0, 0, 0, 0.08);
    border-radius: 8px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
}

.add-detail-pane-header[b-lvy7uc1sht] {
    font-size: 0.72rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--adv-text-muted);
    padding: 0.5rem 0.75rem;
    background: rgba(0, 0, 0, 0.02);
    border-bottom: 1px solid rgba(0, 0, 0, 0.06);
}

.add-detail-list[b-lvy7uc1sht] {
    max-height: min(320px, 50vh);
    overflow-y: auto;
}

.add-detail-option[b-lvy7uc1sht] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
    padding: 0.55rem 0.75rem;
    cursor: pointer;
    border-bottom: 1px solid rgba(0, 0, 0, 0.04);
    font-size: 0.85rem;
    transition: background 0.12s;
}

.add-detail-option:last-child[b-lvy7uc1sht] {
    border-bottom: none;
}

.add-detail-option:hover[b-lvy7uc1sht] {
    background: rgba(74, 159, 213, 0.06);
}

.add-detail-option.selected[b-lvy7uc1sht] {
    background: rgba(39, 174, 96, 0.08);
    font-weight: 600;
}

:global(.dark-theme) .add-detail-pane[b-lvy7uc1sht] {
    border-color: rgba(255, 255, 255, 0.1);
}

:global(.dark-theme) .add-detail-pane-header[b-lvy7uc1sht] {
    background: rgba(255, 255, 255, 0.03);
    border-bottom-color: rgba(255, 255, 255, 0.08);
}
/* /Components/Pages/Parties/Parties.razor.rz.scp.css */
.parties-header[b-zia8n07gkw] {
    margin-bottom: 1rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid var(--adv-border);
}

.parties-header__bar[b-zia8n07gkw] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    flex-wrap: wrap;
    margin-top: 0.5rem;
}

.parties-header__title[b-zia8n07gkw] {
    display: flex;
    align-items: center;
    gap: 0.6rem;
}

.parties-header__actions[b-zia8n07gkw] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: wrap;
}

.parties-filterbar[b-zia8n07gkw] {
    display: flex;
    align-items: center;
    gap: 1rem;
    flex-wrap: wrap;
    margin-bottom: 1rem;
}

.parties-filterbar__bar[b-zia8n07gkw] {
    flex: 1 1 320px;
    min-width: 0;
}

.parties-archived[b-zia8n07gkw] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    font-size: 0.85rem;
    color: var(--adv-text-muted);
    white-space: nowrap;
    cursor: pointer;
}

/* Name cell: category icon chip sits before the party name (#1788). */
.parties-name-cell[b-zia8n07gkw] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
}

/* Categorie icon chip in the grid (#1788) — background/color are injected
   inline from PartyIconHelper's per-category buckets. */
.parties-form-icon[b-zia8n07gkw] {
    width: 28px;
    height: 28px;
    border-radius: 8px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.parties-form-icon[b-zia8n07gkw]  .rzi {
    font-size: 18px;
}

@media (max-width: 640px) {
    .parties-header__bar[b-zia8n07gkw] {
        align-items: flex-start;
    }
}

/* Grid hover/pager handled globally in site.css */
/* /Components/Pages/Parties/PartyDetail.razor.rz.scp.css */
.party-detail-page[b-32irlt5pzx] {
    padding: 0.5rem 0;
}

/* ── Header (same layout as CaseDetail) ── */
.party-detail-header[b-32irlt5pzx] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    flex-wrap: wrap;
    margin-bottom: 1.25rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid var(--adv-border);
}

.party-header-top[b-32irlt5pzx] {
    display: flex;
    align-items: center;
    gap: 1rem;
    min-width: 0;
    flex: 1;
}

.party-header-title[b-32irlt5pzx] {
    min-width: 0;
    overflow: hidden;
}

.party-header-name[b-32irlt5pzx] {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.party-header-name-text[b-32irlt5pzx] {
    font-weight: 600;
}

.party-header-actions[b-32irlt5pzx] {
    flex-shrink: 0;
}

.party-detail-icon[b-32irlt5pzx] {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    background: rgba(74, 159, 213, 0.12);
    color: var(--adv-primary);
}

.party-detail-icon .rzi[b-32irlt5pzx],
.party-detail-icon .material-icons[b-32irlt5pzx] {
    font-size: 24px !important;
}

/* ── Clickable KPI card ── */
.party-kpi-card-clickable[b-32irlt5pzx] {
    cursor: pointer;
    transition: box-shadow 0.15s, transform 0.1s;
    user-select: none;
}

.party-kpi-card-clickable:hover[b-32irlt5pzx] {
    box-shadow: 0 4px 16px rgba(74, 159, 213, 0.18);
    transform: translateY(-1px);
}

/* ── Tabs ── */
.case-tab-content[b-32irlt5pzx] {
    padding-top: 1.25rem;
}

/* ── Details widget (Algemeen tab, right column, #2018) ── */
/* Header holds the title left and the "add detail" button right. */
.party-details-header[b-32irlt5pzx] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
}

.party-details-empty[b-32irlt5pzx] {
    text-align: center;
    padding: 2rem;
    color: var(--adv-text-muted);
}

/* Right-hand header group: the name filter sits beside the Add button. */
.party-details-header-actions[b-32irlt5pzx] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    min-width: 0;
}

/* Name filter over the widget's filled details, in the header beside the Add
   button. Shrinks to fit the header so the Add button always stays visible. */
.party-details-search[b-32irlt5pzx] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.3rem 0.55rem;
    flex: 1 1 auto;
    min-width: 0;
    max-width: 200px;
    border: 1px solid rgba(0, 0, 0, 0.12);
    border-radius: 8px;
    background: rgba(0, 0, 0, 0.02);
}

.party-details-search:focus-within[b-32irlt5pzx] {
    border-color: var(--adv-primary);
}

.party-details-search-icon[b-32irlt5pzx] {
    flex: 0 0 auto;
    font-size: 1.05rem;
}

.party-details-search-input[b-32irlt5pzx] {
    flex: 1 1 auto;
    min-width: 0;
    border: none;
    outline: none;
    background: transparent;
    color: var(--adv-text);
    font-size: 0.85rem;
}

.party-details-search-input[b-32irlt5pzx]::placeholder {
    color: var(--adv-text-muted);
}

:global(.dark-theme) .party-details-search[b-32irlt5pzx] {
    border-color: rgba(255, 255, 255, 0.12);
    background: rgba(255, 255, 255, 0.03);
}

/* Section titles + spacing between detail groups inside the widget. */
.party-details-group + .party-details-group[b-32irlt5pzx] {
    margin-top: 1.25rem;
}

[b-32irlt5pzx] .party-details-group-title {
    display: block;
    font-weight: 600;
    color: var(--adv-text);
    margin-bottom: 0.5rem;
}

/* On desktop (columns side-by-side, row stretched to equal height) the widget
   fills its column and matches the left general-info card's height, scrolling
   internally instead of stretching the row. The card is absolutely positioned
   inside a plain relative wrapper (a real element that carries the component's
   scope — a class on RadzenColumn would not), so its content height never
   drives the row; the taller left card does. Below the LG breakpoint the
   columns stack, so it reverts to natural flow (no forced height/scroll). */
.party-details-wrap[b-32irlt5pzx] {
    height: 100%;
}

@media (min-width: 992px) {
    .party-details-wrap[b-32irlt5pzx] {
        position: relative;
    }

    .party-details-wrap[b-32irlt5pzx]  .party-details-card {
        position: absolute;
        inset: 0;
        margin: 0;
        display: flex;
        flex-direction: column;
        overflow: hidden;
    }

    .party-details-scroll[b-32irlt5pzx] {
        flex: 1 1 auto;
        min-height: 0;
        overflow-y: auto;
        padding-right: 0.25rem;
    }
}

.case-tab-toolbar[b-32irlt5pzx] {
    margin-bottom: 1rem;
}

/* ── Case fields (read-only display — same as CaseDetail) ── */
.case-field[b-32irlt5pzx] {
    margin-bottom: 1rem;
}

.case-field-label[b-32irlt5pzx] {
    display: block;
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--adv-text-muted);
    text-transform: uppercase;
    letter-spacing: 0.04em;
    margin-bottom: 0.25rem;
}

.case-field-value[b-32irlt5pzx] {
    font-size: 0.95rem;
    color: var(--adv-text);
    font-weight: 500;
    word-break: break-word;
}

/* ── Linked-to ("Gekoppeld aan") rows inside the merged contacts grid ── */
/* Differentiates reverse-link rows from real contact persons: subtle tint +
   a primary accent bar on the left. #2016 */
[b-32irlt5pzx] tr.linked-party-row td {
    background: rgba(74, 159, 213, 0.05);
}

[b-32irlt5pzx] tr.linked-party-row td:first-child {
    box-shadow: inset 3px 0 0 0 var(--adv-primary);
}

:global(.dark-theme)[b-32irlt5pzx]  tr.linked-party-row td {
    background: rgba(74, 159, 213, 0.08);
}

/* ── Linked case items ── */
.party-case-item[b-32irlt5pzx] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    padding: 0.65rem 0.5rem;
    border-radius: 8px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.04);
    transition: background 0.15s;
}

.party-case-item:last-child[b-32irlt5pzx] {
    border-bottom: none;
}

.party-case-item:hover[b-32irlt5pzx] {
    background: rgba(74, 159, 213, 0.04);
}

.party-case-details[b-32irlt5pzx] {
    display: flex;
    flex-direction: column;
    flex: 1;
    min-width: 0;
}

.party-case-number[b-32irlt5pzx] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--adv-primary-dark);
}

.party-case-name[b-32irlt5pzx] {
    font-size: 0.75rem;
    color: var(--adv-text-muted);
    margin-top: 0.1rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Grid hover now handled globally in site.css */

/* ── Responsive ── */
@media (max-width: 768px) {
    .party-detail-header[b-32irlt5pzx] {
        flex-direction: column;
        align-items: flex-start;
    }

    .party-header-actions[b-32irlt5pzx] {
        width: 100%;
    }

    .party-detail-icon[b-32irlt5pzx] {
        width: 40px;
        height: 40px;
        border-radius: 10px;
    }

    .party-detail-icon .rzi[b-32irlt5pzx],
    .party-detail-icon .material-icons[b-32irlt5pzx] {
        font-size: 20px !important;
    }
}

/* ── Dark theme ── */
:global(.dark-theme) .party-detail-icon[b-32irlt5pzx] {
    background: rgba(74, 159, 213, 0.15);
}

:global(.dark-theme) .party-case-item[b-32irlt5pzx] {
    border-bottom-color: rgba(255, 255, 255, 0.04);
}

:global(.dark-theme) .party-case-item:hover[b-32irlt5pzx] {
    background: rgba(74, 159, 213, 0.06);
}

/* ── Audit history section ── */
.party-audit-section[b-32irlt5pzx] {
    margin-left: var(--rz-tabs-padding, 1.25rem);
    margin-right: var(--rz-tabs-padding, 1.25rem);
}

.party-audit-card-header[b-32irlt5pzx] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    cursor: pointer;
    user-select: none;
}

.party-audit-card-header:hover[b-32irlt5pzx] {
    opacity: 0.8;
}

.party-audit-card-icon[b-32irlt5pzx] {
    width: 34px;
    height: 34px;
    border-radius: 9px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    background: rgba(74, 159, 213, 0.12);
    color: var(--adv-primary);
}

/* ── Print styles ── */
@media print {
    .no-print[b-32irlt5pzx],
    .case-tab-toolbar[b-32irlt5pzx],
    .adv-breadcrumb[b-32irlt5pzx] {
        display: none !important;
    }

    [b-32irlt5pzx] .rz-datatable .rz-datatable-thead th:last-child,
    [b-32irlt5pzx] .rz-datatable .rz-datatable-data td:last-child {
        display: none !important;
    }

    .party-detail-header[b-32irlt5pzx] {
        border-bottom: none;
        margin-bottom: 0.5rem;
        padding-bottom: 0;
    }

    .party-detail-page[b-32irlt5pzx] {
        padding: 0;
    }
}
/* /Components/Pages/Peppol/Components/UblPreviewComponent.razor.rz.scp.css */
[b-0xdkcqp3lj] .ubl-xml-preview {
    max-height: 600px;
    overflow: auto;
    background: var(--rz-base-200);
    padding: 1rem;
    border-radius: 4px;
    font-size: 0.85rem;
    line-height: 1.5;
    white-space: pre-wrap;
    word-wrap: break-word;
    tab-size: 2;
}

[b-0xdkcqp3lj] .ubl-xml-tag {
    color: #22863a;
    font-weight: 500;
}

[b-0xdkcqp3lj] .ubl-xml-attr-name {
    color: #6f42c1;
}

[b-0xdkcqp3lj] .ubl-xml-attr-value {
    color: #032f62;
}

[b-0xdkcqp3lj] .ubl-xml-comment {
    color: #6a737d;
    font-style: italic;
}

[b-0xdkcqp3lj] .ubl-xml-pi {
    color: #6a737d;
}
/* /Components/Pages/Performances/Performances.razor.rz.scp.css */
.performances-header[b-w1gt1lr2af] {
    margin-bottom: 1.25rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid var(--adv-border);
}

.perf-tab-content[b-w1gt1lr2af] {
    padding-top: 1rem;
}

/* ── Odoo-style facet filter bar + saved filters + tab actions (#1796) ──
   Single row per tab: the facet bar grows to fill; the saved-filters menu and
   the tab's action buttons sit at the end. Mirrors CaseItems.razor.css. */
.perf-filterbar[b-w1gt1lr2af] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex-wrap: wrap;
    margin-bottom: 1rem;
    /* The backdrop-filter below makes this a stacking context. Elevate the bar
       above the frosted-glass datagrid so the facet popup isn't painted over
       (same fix as the cases overview, #1799). */
    position: relative;
    z-index: 10;
    background: var(--adv-surface-glass);
    -webkit-backdrop-filter: blur(var(--adv-glass-blur));
    backdrop-filter: blur(var(--adv-glass-blur));
    border: 1px solid var(--adv-glass-border);
    border-radius: 0.85rem;
    box-shadow: var(--adv-shadow-card);
}

.perf-filterbar__bar[b-w1gt1lr2af] {
    flex: 1 1 320px;
    min-width: 0;
}

@media (max-width: 640px) {
    .perf-filterbar__bar[b-w1gt1lr2af] {
        flex-basis: 100%;
    }
}
/* /Components/Pages/Settings/CalendarSettings.razor.rz.scp.css */
.settings-sub-page[b-e34u89euja] {
    padding: 0.5rem 0;
}

.settings-breadcrumb[b-e34u89euja] {
    margin-bottom: 1rem;
}

.settings-sub-header[b-e34u89euja] {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 1.5rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid var(--adv-border);
}

.settings-card-icon[b-e34u89euja] {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.settings-card-icon .rzi[b-e34u89euja],
.settings-card-icon .material-icons[b-e34u89euja] {
    font-size: 24px !important;
}

.settings-tab-content[b-e34u89euja] {
    padding-top: 1rem;
}

.settings-tab-toolbar[b-e34u89euja] {
    display: flex;
    justify-content: flex-end;
    margin-bottom: 1rem;
}

/* Grid hover now handled globally in site.css */

/* ── Display-settings table ── */
.adv-settings-table[b-e34u89euja] {
    width: 100%;
    max-width: 640px;
}

.adv-settings-row[b-e34u89euja] {
    display: grid;
    grid-template-columns: 2fr 3fr;
    align-items: center;
    gap: 1.5rem;
    padding: 0.9rem 0;
    border-bottom: 1px solid var(--adv-border-subtle);
}

.adv-settings-row:last-child[b-e34u89euja] {
    border-bottom: none;
}

.adv-settings-label[b-e34u89euja] {
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--adv-text);
    line-height: 1.4;
}

.adv-settings-hint[b-e34u89euja] {
    font-size: 0.75rem;
    color: var(--adv-text-muted);
    margin-top: 0.2rem;
    line-height: 1.4;
}
/* /Components/Pages/Settings/CaseSettings.razor.rz.scp.css */
.settings-sub-page[b-l6xahmxwnr] {
    padding: 0.5rem 0;
}

.settings-breadcrumb[b-l6xahmxwnr] {
    margin-bottom: 1rem;
}

.settings-sub-header[b-l6xahmxwnr] {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 1.5rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid var(--adv-border);
}

.settings-card-icon[b-l6xahmxwnr] {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.settings-card-icon .rzi[b-l6xahmxwnr],
.settings-card-icon .material-icons[b-l6xahmxwnr] {
    font-size: 24px !important;
}

.settings-tab-content[b-l6xahmxwnr] {
    padding-top: 1rem;
}

.settings-tab-toolbar[b-l6xahmxwnr] {
    display: flex;
    justify-content: flex-end;
    margin-bottom: 1rem;
}

/* Grid hover now handled globally in site.css */

/* ── Drag-sortable status list ────────────────────────── */
.status-sortable[b-l6xahmxwnr] {
    border: 1px solid var(--adv-border);
    border-radius: 4px;
    overflow: hidden;
}

.status-sortable-header[b-l6xahmxwnr],
.status-sortable-row[b-l6xahmxwnr] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.25rem 0.5rem;
    min-height: 34px;
    font-size: 0.875rem;
}

.status-sortable-header[b-l6xahmxwnr] {
    background: var(--rz-datalist-header-background-color, var(--adv-surface));
    border-bottom: 1px solid var(--adv-border);
    font-size: 0.75rem;
    font-weight: 700;
    color: var(--rz-text-secondary-color);
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.status-sortable-row[b-l6xahmxwnr] {
    border-bottom: 1px solid var(--adv-border);
    transition: background 0.1s;
    user-select: none;
}

.status-sortable-row:last-child[b-l6xahmxwnr] {
    border-bottom: none;
}

.status-sortable-row:hover[b-l6xahmxwnr] {
    background: var(--rz-grid-row-hover-background-color, rgba(0,0,0,0.03));
}

.status-drag-source[b-l6xahmxwnr] {
    opacity: 0.45;
}

.status-drag-over[b-l6xahmxwnr] {
    background: var(--rz-primary-lighter, rgba(var(--rz-primary-rgb), 0.08)) !important;
    border-top: 2px solid var(--rz-primary);
}

.status-col-drag[b-l6xahmxwnr] {
    width: 28px;
    flex-shrink: 0;
    color: var(--rz-text-disabled-color);
    cursor: grab;
    display: flex;
    align-items: center;
}

.status-col-name[b-l6xahmxwnr] {
    flex: 1;
    min-width: 150px;
}

.status-col-color[b-l6xahmxwnr] {
    width: 160px;
    flex-shrink: 0;
}

.status-col-default[b-l6xahmxwnr] {
    width: 100px;
    flex-shrink: 0;
    display: flex;
    justify-content: center;
    align-items: center;
}

.status-col-actions[b-l6xahmxwnr] {
    width: 80px;
    flex-shrink: 0;
    display: flex;
    gap: 0.15rem;
    justify-content: center;
}
/* /Components/Pages/Settings/DocumentSettings.razor.rz.scp.css */
.settings-sub-page[b-w19751kw5a] {
    padding: 0.5rem 0;
}

.settings-breadcrumb[b-w19751kw5a] {
    margin-bottom: 1rem;
}

.settings-sub-header[b-w19751kw5a] {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 1.5rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid var(--adv-border);
}

.settings-card-icon[b-w19751kw5a] {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.settings-card-icon .rzi[b-w19751kw5a],
.settings-card-icon .material-icons[b-w19751kw5a] {
    font-size: 24px !important;
}

.settings-tab-content[b-w19751kw5a] {
    padding-top: 1rem;
}

.settings-tab-toolbar[b-w19751kw5a] {
    display: flex;
    justify-content: flex-end;
    margin-bottom: 1rem;
}

/* Grid hover now handled globally in site.css */
/* /Components/Pages/Settings/GeneralSettings.razor.rz.scp.css */
.settings-sub-page[b-8c81le0g3a] {
    padding: 0.5rem 0;
}

.settings-breadcrumb[b-8c81le0g3a] {
    margin-bottom: 1rem;
}

.settings-sub-header[b-8c81le0g3a] {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 1.5rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid var(--adv-border);
}

.settings-card-icon[b-8c81le0g3a] {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.settings-card-icon .rzi[b-8c81le0g3a],
.settings-card-icon .material-icons[b-8c81le0g3a] {
    font-size: 24px !important;
}

.settings-tab-content[b-8c81le0g3a] {
    padding-top: 1rem;
}

.settings-tab-toolbar[b-8c81le0g3a] {
    display: flex;
    justify-content: flex-end;
    margin-bottom: 1rem;
}

/* Grid hover now handled globally in site.css */
/* /Components/Pages/Settings/IndexSettings.razor.rz.scp.css */
.index-card-active[b-yyirptbg22] {
    outline: 2px solid var(--adv-primary);
    outline-offset: -2px;
    background: var(--adv-primary-lighter) !important;
}

.index-detail-section[b-yyirptbg22] {
    margin-top: 1.5rem;
    padding: 1.25rem;
    background: var(--rz-base-background-color);
    border: 1px solid var(--adv-border);
    border-radius: var(--rz-border-radius);
}

/* Grid hover now handled globally in site.css */
/* /Components/Pages/Settings/OfficeSettings.razor.rz.scp.css */
.settings-sub-page[b-xz3zaetj73] {
    padding: 0.5rem 0;
}

.settings-breadcrumb[b-xz3zaetj73] {
    margin-bottom: 1rem;
}

.settings-sub-header[b-xz3zaetj73] {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 1.5rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid var(--adv-border);
}

.settings-card-icon[b-xz3zaetj73] {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.settings-card-icon .rzi[b-xz3zaetj73],
.settings-card-icon .material-icons[b-xz3zaetj73] {
    font-size: 24px !important;
}

.settings-tab-content[b-xz3zaetj73] {
    padding-top: 1rem;
}

.settings-tab-toolbar[b-xz3zaetj73] {
    display: flex;
    justify-content: flex-end;
    margin-bottom: 1rem;
}

.settings-field[b-xz3zaetj73] {
    margin-bottom: 1rem;
}

.settings-field-label[b-xz3zaetj73] {
    display: block;
    font-size: 0.8rem;
    font-weight: 600;
    color: var(--adv-text-muted);
    text-transform: uppercase;
    letter-spacing: 0.03em;
    margin-bottom: 0.2rem;
}

.settings-field-value[b-xz3zaetj73] {
    font-size: 0.95rem;
    color: var(--adv-text);
    font-weight: 500;
}

/* Grid hover now handled globally in site.css */
/* /Components/Pages/Settings/PartySettings.razor.rz.scp.css */
.settings-sub-page[b-umodf720so] {
    padding: 0.5rem 0;
}

.settings-breadcrumb[b-umodf720so] {
    margin-bottom: 1rem;
}

.settings-sub-header[b-umodf720so] {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 1.5rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid var(--adv-border);
}

.settings-card-icon[b-umodf720so] {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.settings-card-icon .rzi[b-umodf720so],
.settings-card-icon .material-icons[b-umodf720so] {
    font-size: 24px !important;
}

.settings-tab-content[b-umodf720so] {
    padding-top: 1rem;
}

.settings-tab-toolbar[b-umodf720so] {
    display: flex;
    justify-content: flex-end;
    margin-bottom: 1rem;
}

/* Grid hover now handled globally in site.css */
/* /Components/Pages/Settings/PeppolSettings.razor.rz.scp.css */
.settings-sub-page[b-ww9tmovlyi] {
    padding: 0.5rem 0;
}

.settings-sub-header[b-ww9tmovlyi] {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 1.5rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid var(--adv-border);
}

.settings-card-icon[b-ww9tmovlyi] {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.settings-card-icon .rzi[b-ww9tmovlyi],
.settings-card-icon .material-icons[b-ww9tmovlyi] {
    font-size: 24px !important;
}
/* /Components/Pages/Settings/PerformanceSettings.razor.rz.scp.css */
.settings-sub-page[b-2zm513xn54] {
    padding: 0.5rem 0;
}

.settings-breadcrumb[b-2zm513xn54] {
    margin-bottom: 1rem;
}

.settings-sub-header[b-2zm513xn54] {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 1.5rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid var(--adv-border);
}

.settings-card-icon[b-2zm513xn54] {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.settings-card-icon .rzi[b-2zm513xn54],
.settings-card-icon .material-icons[b-2zm513xn54] {
    font-size: 24px !important;
}

.settings-tab-content[b-2zm513xn54] {
    padding-top: 1rem;
}

.settings-tab-toolbar[b-2zm513xn54] {
    display: flex;
    justify-content: flex-end;
    margin-bottom: 1rem;
}

/* Grid hover now handled globally in site.css */
/* /Components/Pages/Settings/SettingRecentlyDeletedPanel.razor.rz.scp.css */
.srp-panel[b-fjpit7l97i] {
    position: fixed;
    top: 72px;
    right: 0;
    bottom: 0;
    width: 380px;
    background: var(--rz-base-background-color, #fff);
    border-left: 1px solid var(--rz-border-color);
    box-shadow: -4px 0 16px rgba(0, 0, 0, 0.08);
    z-index: 100;
    display: flex;
    flex-direction: column;
    padding: 1rem;
    overflow-y: auto;
}

.srp-panel__header[b-fjpit7l97i] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 0.25rem;
}

.srp-panel__title[b-fjpit7l97i] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    font-weight: 600;
    font-size: 0.95rem;
}

.srp-panel__icon[b-fjpit7l97i] {
    color: var(--rz-danger);
    font-size: 1.1rem;
}

.srp-panel__subtitle[b-fjpit7l97i] {
    font-size: 0.78rem;
    color: var(--rz-text-secondary-color);
    margin-bottom: 1rem;
}

.srp-panel__loading[b-fjpit7l97i],
.srp-panel__empty[b-fjpit7l97i] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.5rem;
    padding: 2rem 0;
    color: var(--rz-text-secondary-color);
    font-size: 0.85rem;
}

.srp-panel__empty-icon[b-fjpit7l97i] {
    font-size: 2rem;
    opacity: 0.4;
}

.srp-panel__table[b-fjpit7l97i] {
    display: flex;
    flex-direction: column;
    gap: 0;
    font-size: 0.82rem;
}

.srp-panel__table-header[b-fjpit7l97i],
.srp-panel__table-row[b-fjpit7l97i] {
    display: grid;
    grid-template-columns: 1fr 70px 70px;
    gap: 0.5rem;
    align-items: center;
    padding: 0.4rem 0;
    border-bottom: 1px solid var(--rz-border-color);
}

.srp-panel__table-header[b-fjpit7l97i] {
    font-weight: 600;
    color: var(--rz-text-secondary-color);
    font-size: 0.78rem;
    text-transform: uppercase;
    letter-spacing: 0.02em;
}

.srp-panel__name-cell[b-fjpit7l97i] {
    display: flex;
    flex-direction: column;
    overflow: hidden;
    gap: 0.1rem;
}

.srp-panel__name[b-fjpit7l97i] {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.srp-panel__deleted-by[b-fjpit7l97i] {
    font-size: 0.72rem;
    color: var(--rz-text-secondary-color);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.srp-panel__date[b-fjpit7l97i] {
    color: var(--rz-text-secondary-color);
    font-size: 0.78rem;
}

.srp-panel__action[b-fjpit7l97i] {
    display: flex;
    justify-content: flex-end;
}
/* /Components/Pages/Settings/Settings.razor.rz.scp.css */
.settings-header[b-d2b69vmwyu] {
    margin-bottom: 1.25rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid var(--adv-border);
}

.settings-card[b-d2b69vmwyu] {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    transition: box-shadow 0.2s, transform 0.2s;
    cursor: pointer;
}

.settings-card:hover[b-d2b69vmwyu] {
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.1), 0 0 1px rgba(0, 0, 0, 0.1) !important;
    transform: translateY(-2px);
}

.settings-card-icon[b-d2b69vmwyu] {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 0.75rem;
}

.settings-card-icon .rzi[b-d2b69vmwyu],
.settings-card-icon .material-icons[b-d2b69vmwyu] {
    font-size: 24px !important;
}

.settings-card-items[b-d2b69vmwyu] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
    margin-top: 0.5rem;
}

.settings-card-tag[b-d2b69vmwyu] {
    display: inline-block;
    padding: 0.1rem 0.45rem;
    border-radius: 4px;
    font-size: 0.7rem;
    font-weight: 500;
    background: var(--rz-base-200, rgba(0, 0, 0, 0.04));
    color: var(--adv-text-muted);
}
/* /Components/Pages/Settings/UserSettings.razor.rz.scp.css */
.settings-sub-page[b-pnpcmmxm6t] {
    padding: 0.5rem 0;
}

.settings-breadcrumb[b-pnpcmmxm6t] {
    margin-bottom: 1rem;
}

.settings-sub-header[b-pnpcmmxm6t] {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 1.5rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid var(--adv-border);
}

.settings-card-icon[b-pnpcmmxm6t] {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.settings-card-icon .rzi[b-pnpcmmxm6t],
.settings-card-icon .material-icons[b-pnpcmmxm6t] {
    font-size: 24px !important;
}

.settings-tab-content[b-pnpcmmxm6t] {
    padding-top: 1rem;
}

.settings-tab-toolbar[b-pnpcmmxm6t] {
    display: flex;
    justify-content: flex-end;
    margin-bottom: 1rem;
}

/* Grid hover now handled globally in site.css */
/* /Components/Pages/TimeTracking/ApprovalQueueTab.razor.rz.scp.css */
/* ── Odoo-style facet filter bar + saved filters + actions (#1796) ──
   Same row layout as TimeEntriesTab.razor.css (scoped CSS cannot be shared
   across components). Mirrors .cases-filterbar (CaseItems.razor.css). */
.timetracking-filterbar[b-emtedby1th] {
    display: flex;
    align-items: center;
    gap: 1rem;
    flex-wrap: wrap;
    margin-bottom: 1rem;
    /* The backdrop-filter below makes this a stacking context. Without an explicit
       z-index, the later frosted-glass datagrid (its own backdrop-filter stacking
       context) paints over the open facet popup — the popup's inner z-index:1002
       can't escape this wrapper. Elevate the whole bar above the grid. #1799 */
    position: relative;
    z-index: 10;
    background: var(--adv-surface-glass);
    -webkit-backdrop-filter: blur(var(--adv-glass-blur));
    backdrop-filter: blur(var(--adv-glass-blur));
    border: 1px solid var(--adv-glass-border);
    border-radius: 0.85rem;
    box-shadow: var(--adv-shadow-card);
}

.timetracking-filterbar__bar[b-emtedby1th] {
    flex: 1 1 320px;
    min-width: 0;
}

.timetracking-filterbar__actions[b-emtedby1th] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

/* ── Responsive ── */
@media (max-width: 640px) {
    .timetracking-filterbar__bar[b-emtedby1th] {
        flex-basis: 100%;
    }
}
/* /Components/Pages/TimeTracking/StatusBadge.razor.rz.scp.css */
.status-rejected[b-y9rdxgr5p7] {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 2px;
    min-width: 0;
}

.status-rejected__reason[b-y9rdxgr5p7] {
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 0.75rem;
    line-height: 1.2;
    color: var(--rz-danger, #d32f2f);
}
/* /Components/Pages/TimeTracking/TimeEntriesTab.razor.rz.scp.css */
/* ── Odoo-style facet filter bar + saved filters + actions (#1796) ──
   Single row: the facet bar grows to fill, the saved-filters menu and the
   action buttons sit at the end. Mirrors .cases-filterbar (CaseItems.razor.css). */
.timetracking-filterbar[b-rgz6q4m66e] {
    display: flex;
    align-items: center;
    gap: 1rem;
    flex-wrap: wrap;
    margin-bottom: 1rem;
    /* The backdrop-filter below makes this a stacking context. Without an explicit
       z-index, the later frosted-glass datagrid (its own backdrop-filter stacking
       context) paints over the open facet popup — the popup's inner z-index:1002
       can't escape this wrapper. Elevate the whole bar above the grid. #1799 */
    position: relative;
    z-index: 10;
    background: var(--adv-surface-glass);
    -webkit-backdrop-filter: blur(var(--adv-glass-blur));
    backdrop-filter: blur(var(--adv-glass-blur));
    border: 1px solid var(--adv-glass-border);
    border-radius: 0.85rem;
    box-shadow: var(--adv-shadow-card);
}

.timetracking-filterbar__bar[b-rgz6q4m66e] {
    flex: 1 1 320px;
    min-width: 0;
}

.timetracking-filterbar__actions[b-rgz6q4m66e] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

/* ── Responsive ── */
@media (max-width: 640px) {
    .timetracking-filterbar__bar[b-rgz6q4m66e] {
        flex-basis: 100%;
    }
}
/* /Components/Widgets/AppDialogFooter.razor.rz.scp.css */
/* Action bar pinned below the dialog body with a hairline divider.
   Uses Radzen theme tokens so the border + spacing read correctly in
   both light and dark. The Start slot pushes primary actions to the
   right via margin-right:auto; everything wraps gracefully when narrow. */
.app-dialog-footer[b-gu9861zwfp] {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-top: 0.25rem;
    padding-top: 1rem;
    border-top: 1px solid var(--rz-border-color);
}

.app-dialog-footer__start[b-gu9861zwfp] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.375rem;
    margin-right: auto;
}

.app-dialog-footer__end[b-gu9861zwfp] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.5rem;
}
/* /Components/Widgets/FilterBar/AdvFacetChip.razor.rz.scp.css */
.adv-facet-chip[b-il373nw3o7] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 2px 4px 2px 8px;
    border-radius: 10px;
    font-size: 0.78rem;
    line-height: 1.4;
    white-space: nowrap;
    background: var(--adv-primary-lighter);
    color: var(--adv-primary-dark);
    max-width: 320px;
    overflow: hidden;
}

.adv-facet-chip__field[b-il373nw3o7] {
    font-weight: 600;
}

.adv-facet-chip__field[b-il373nw3o7]::after {
    content: ":\00a0";
}

.adv-facet-chip__values[b-il373nw3o7] {
    font-weight: 500;
    overflow: hidden;
    text-overflow: ellipsis;
}

.adv-facet-chip__remove[b-il373nw3o7] {
    display: inline-flex;
    align-items: center;
    border: none;
    background: transparent;
    color: var(--adv-primary-dark);
    cursor: pointer;
    padding: 0;
    border-radius: 50%;
}

.adv-facet-chip__remove:hover[b-il373nw3o7] {
    color: var(--adv-danger);
}

.adv-facet-chip__icon[b-il373nw3o7] {
    font-size: 1rem;
}
/* /Components/Widgets/FilterBar/AdvFacetFilterBar.razor.rz.scp.css */
/* ============================================================
   Generic Odoo-style facet search bar (#1796).
   Tokens only; Radzen internals reached with ::deep where needed.
   Outside-click dismissal lives in facetFilter.js — a fixed-position
   backdrop is unusable here (backdrop-filter ancestors become its
   containing block and shrink it to the bar's box).
   ============================================================ */

.adv-facetbar[b-mi8rqkjrsx] {
    position: relative;
    z-index: 1001;
}

.adv-facetbar__field[b-mi8rqkjrsx] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.35rem;
    min-height: 42px;
    padding: 0.3rem 0.5rem;
    background: var(--adv-surface);
    border: 1px solid var(--adv-input-border);
    border-radius: 0.6rem;
    cursor: text;
    transition: border-color .12s ease, box-shadow .12s ease;
}

.adv-facetbar.is-open .adv-facetbar__field[b-mi8rqkjrsx],
.adv-facetbar__field:focus-within[b-mi8rqkjrsx] {
    border-color: var(--adv-primary);
    box-shadow: var(--adv-focus-shadow);
}

.adv-facetbar__icon[b-mi8rqkjrsx] {
    color: var(--adv-text-muted);
    font-size: 1.15rem;
    margin: 0 0.1rem 0 0.2rem;
}

.adv-facetbar__input[b-mi8rqkjrsx] {
    flex: 1 1 140px;
    min-width: 140px;
    border: none;
    outline: none;
    background: transparent;
    color: var(--adv-text);
    font-size: 0.9rem;
    padding: 0.3rem 0.15rem;
}

.adv-facetbar__clear[b-mi8rqkjrsx] {
    display: inline-flex;
    align-items: center;
    border: none;
    background: transparent;
    color: var(--adv-text-muted);
    cursor: pointer;
    padding: 0.15rem;
    border-radius: 50%;
}

.adv-facetbar__clear:hover[b-mi8rqkjrsx] {
    color: var(--adv-danger);
    background: var(--adv-row-hover);
}

.adv-facetbar__clear-icon[b-mi8rqkjrsx] {
    font-size: 1.05rem;
}

/* ── Popup ── */
.adv-facet-popup[b-mi8rqkjrsx] {
    position: absolute;
    top: calc(100% + 4px);
    left: 0;
    right: 0;
    z-index: 1002;
    max-height: 380px;
    overflow-y: auto;
    background: var(--adv-surface);
    border: 1px solid var(--adv-border);
    border-radius: 0.6rem;
    box-shadow: var(--adv-shadow-elevated);
    padding: 0.35rem;
}

.adv-facet-popup__empty[b-mi8rqkjrsx] {
    padding: 0.6rem 0.7rem;
    color: var(--adv-text-muted);
    font-size: 0.85rem;
}

.adv-facet-row[b-mi8rqkjrsx] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.45rem 0.55rem;
    border-radius: 0.45rem;
    cursor: pointer;
    font-size: 0.88rem;
    color: var(--adv-text);
}

.adv-facet-row.is-active[b-mi8rqkjrsx] {
    background: var(--adv-row-hover);
}

.adv-facet-row__icon[b-mi8rqkjrsx] {
    color: var(--adv-text-muted);
    font-size: 1.1rem;
}

.adv-facet-row__label[b-mi8rqkjrsx] {
    flex: 1 1 auto;
}

.adv-facet-row__chevron[b-mi8rqkjrsx] {
    color: var(--adv-text-muted);
    font-size: 1.1rem;
}

/* ── Value picker ── */
.adv-facet-picker[b-mi8rqkjrsx] {
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
    padding: 0.15rem;
}

.adv-facet-picker__back[b-mi8rqkjrsx] {
    display: flex;
    align-items: center;
    gap: 0.3rem;
    border: none;
    background: transparent;
    cursor: pointer;
    color: var(--adv-primary-dark);
    font-weight: 600;
    font-size: 0.85rem;
    padding: 0.3rem 0.25rem;
}

.adv-facet-picker__search[b-mi8rqkjrsx] {
    border: 1px solid var(--adv-input-border);
    border-radius: 0.45rem;
    padding: 0.4rem 0.5rem;
    font-size: 0.85rem;
    outline: none;
}

.adv-facet-picker__search:focus[b-mi8rqkjrsx] {
    border-color: var(--adv-primary);
    box-shadow: var(--adv-focus-shadow);
}

.adv-facet-picker__options[b-mi8rqkjrsx] {
    display: flex;
    flex-direction: column;
    max-height: 220px;
    overflow-y: auto;
}

.adv-facet-option[b-mi8rqkjrsx] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.4rem 0.5rem;
    border-radius: 0.45rem;
    cursor: pointer;
    font-size: 0.88rem;
}

.adv-facet-option:hover[b-mi8rqkjrsx] {
    background: var(--adv-row-hover);
}

.adv-facet-picker__apply[b-mi8rqkjrsx] {
    display: flex;
    justify-content: flex-end;
    padding-top: 0.25rem;
}

.adv-facet-picker__value[b-mi8rqkjrsx] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    padding: 0.25rem;
}

.adv-facet-picker__ops[b-mi8rqkjrsx] {
    display: flex;
    gap: 0.3rem;
    flex-wrap: wrap;
}

.adv-facet-op[b-mi8rqkjrsx] {
    border: 1px solid var(--adv-input-border);
    background: var(--adv-surface);
    color: var(--adv-text-muted);
    border-radius: 0.45rem;
    padding: 0.3rem 0.6rem;
    cursor: pointer;
    font-size: 0.8rem;
    font-weight: 600;
}

.adv-facet-op.is-active[b-mi8rqkjrsx] {
    background: var(--adv-primary);
    color: #fff;
    border-color: var(--adv-primary);
}

.adv-facet-picker__control[b-mi8rqkjrsx] {
    width: 100%;
}

@media (max-width: 640px) {
    .adv-facetbar__input[b-mi8rqkjrsx] {
        flex-basis: 100%;
    }
}
/* /Components/Widgets/InlineEdit/InlineEditField.razor.rz.scp.css */
/* ==========================================================================
   InlineEditField — scoped component styles
   Uses --adv-* design tokens from _variables.css.  Dark-mode safe: all
   colours reference tokens rather than hard-coded hex values.
   ========================================================================== */

/* Container: flex row, aligns label + value/editor side-by-side */
.inline-field[b-lum22vy8b8] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.25rem 0.5rem;
    position: relative;
    min-height: 2rem;
}

/* Label — muted, slightly smaller */
.inline-field-label[b-lum22vy8b8] {
    font-size: 0.8rem;
    font-weight: 600;
    color: var(--adv-text-muted);
    min-width: 6rem;
    flex-shrink: 0;
}

/* Icon label — compact leading icon shown instead of the text label
   (mobile contact card). Kept the same muted tone and a fixed width so the
   values still line up. */
.inline-field-label-icon[b-lum22vy8b8] {
    color: var(--adv-text-muted);
    font-size: 1.15rem;
    min-width: 1.5rem;
    flex-shrink: 0;
    text-align: center;
}

/* Display value */
.inline-field-value[b-lum22vy8b8] {
    color: var(--adv-text);
    flex: 1;
}

/* Pencil icon — hidden by default, shown on container hover */
.inline-field-pencil[b-lum22vy8b8] {
    opacity: 0;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    color: var(--adv-text-muted);
    transition: opacity 0.15s ease, color 0.15s ease;
    line-height: 1;
}

.inline-field:hover .inline-field-pencil[b-lum22vy8b8] {
    opacity: 0.55;
}

.inline-field-pencil:hover[b-lum22vy8b8] {
    opacity: 1 !important;
    color: var(--adv-primary);
}

/* Edit row: editor + confirm/cancel buttons */
.inline-field-edit[b-lum22vy8b8] {
    display: flex;
    align-items: center;
    flex: 1;
    gap: 0.35rem;
}

/* Confirm / cancel buttons. Generously sized circular hit targets (2rem) so the
   commit control is impossible to miss — the previous ~20px icon-spans were so
   small that a near-miss landed on Cancel and silently discarded the edit. #1782 */
.inline-field-btn[b-lum22vy8b8] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2rem;
    height: 2rem;
    flex: 0 0 auto;
    padding: 0;
    border: none;
    border-radius: 50%;
    background: transparent;
    color: var(--adv-text-muted);
    cursor: pointer;
    line-height: 1;
    transition: background-color 0.15s ease, color 0.15s ease;
}

.inline-field-btn:hover[b-lum22vy8b8] {
    background-color: rgba(var(--adv-primary-rgb), 0.1);
    color: var(--adv-primary);
}

/* Keyboard focus ring (native <button> gives us this for free; make it on-brand). */
.inline-field-btn:focus-visible[b-lum22vy8b8] {
    outline: 2px solid var(--adv-primary);
    outline-offset: 1px;
}

.inline-field-btn:disabled[b-lum22vy8b8] {
    cursor: not-allowed;
    opacity: 0.55;
}

/* Confirm is success-tinted so it reads as the affirmative action; cancel stays
   muted. (RadzenIcon renders the glyph; we only colour the surrounding button.) */
.inline-field-btn--save[b-lum22vy8b8] {
    color: var(--adv-success, #2e9e5b);
}

.inline-field-btn--save:hover[b-lum22vy8b8] {
    background-color: rgba(46, 158, 91, 0.14);
    color: var(--adv-success, #2e9e5b);
}

/* Spinning autorenew icon while a save is in flight. */
.inline-field-spin[b-lum22vy8b8] {
    animation: inline-field-spin-b-lum22vy8b8 1s linear infinite;
}

@keyframes inline-field-spin-b-lum22vy8b8 {
    from { transform: rotate(0deg); }
    to   { transform: rotate(360deg); }
}

/* Inline error message — shown below the edit row on save failure */
.inline-field-error[b-lum22vy8b8] {
    display: block;
    width: 100%;
    margin-top: 0.2rem;
    font-size: 0.78rem;
    color: var(--adv-danger);
    background-color: var(--adv-danger-lighter);
    border-radius: 4px;
    padding: 0.15rem 0.4rem;
}
/* /Components/Widgets/NotificationBell.razor.rz.scp.css */
.notification-bell[b-rb21626khq] {
    position: relative;
    display: inline-flex;
}

.notification-bell-badge[b-rb21626khq] {
    position: absolute;
    top: -2px;
    right: -2px;
    min-width: 16px;
    height: 16px;
    padding: 0 4px;
    border-radius: 8px;
    background: var(--rz-danger, #d32f2f);
    color: #fff;
    font-size: 0.62rem;
    line-height: 16px;
    text-align: center;
    pointer-events: none;
}

.notification-panel[b-rb21626khq] {
    position: absolute;
    top: 100%;
    right: 0;
    margin-top: 4px;
    width: 340px;
    max-height: 420px;
    display: flex;
    flex-direction: column;
    background: var(--rz-base-background-color, #fff);
    border: 1px solid var(--rz-border-color, #e0e0e0);
    border-radius: 8px;
    box-shadow: 0 6px 24px rgba(0, 0, 0, 0.16);
    z-index: 1200;
}

.notification-panel-header[b-rb21626khq] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.6rem 0.85rem;
    border-bottom: 1px solid var(--rz-border-color, #eee);
}

.notification-panel-list[b-rb21626khq] {
    overflow-y: auto;
}

.notification-empty[b-rb21626khq] {
    padding: 1.25rem 0.85rem;
    text-align: center;
    font-size: 0.82rem;
    color: var(--rz-text-tertiary-color, #888);
}

.notification-item[b-rb21626khq] {
    display: flex;
    align-items: flex-start;
    gap: 0.5rem;
    padding: 0.6rem 0.85rem;
    cursor: pointer;
    border-bottom: 1px solid var(--rz-border-color, #f1f1f1);
}

.notification-item:hover[b-rb21626khq] {
    background: rgba(45, 122, 181, 0.06);
}

.notification-item-unread[b-rb21626khq] {
    background: rgba(45, 122, 181, 0.09);
}

.notification-item-body[b-rb21626khq] {
    display: flex;
    flex-direction: column;
    gap: 0.15rem;
    min-width: 0;
}

.notification-item-message[b-rb21626khq] {
    font-size: 0.82rem;
    line-height: 1.2;
}

.notification-item-date[b-rb21626khq] {
    font-size: 0.68rem;
    color: var(--rz-text-tertiary-color, #999);
}
/* /Components/Widgets/TopBarTimerWidget.razor.rz.scp.css */
/* Styles moved to site.css for reliable rendering */
