@import '_content/Microsoft.FluentUI.AspNetCore.Components/Microsoft.FluentUI.AspNetCore.Components.exfvxuochq.bundle.scp.css';

/* /Components/Dashboards/DashboardCard.razor.rz.scp.css */
.dashboard-card[b-4u00v9d1qz] {
    position: relative;
    display: flex;
    flex-direction: column;
    width: 100%;
    min-width: 0;
    max-width: 100%;
    height: 100%;
    max-height: 456px;
    overflow: hidden;
    background: #fff;
    border: 1px solid #e2e8f0;
    border-radius: var(--style-border-radius);
    box-shadow: 0 1px 3px rgb(0 0 0 / 8%);
}

.dashboard-card__inner[b-4u00v9d1qz] {
    display: flex;
    flex: 1;
    flex-direction: column;
    min-height: 0;
    padding: 20px 25px;
}

.dashboard-card__ribbon[b-4u00v9d1qz] {
    position: absolute;
    top: -1px;
    left: -1px;
    z-index: 4;
    width: 58px;
    height: 49px;
    clip-path: polygon(0 0, 100% 0, 0 100%);
    pointer-events: none;
}

.dashboard-card__ribbon--new[b-4u00v9d1qz] {
    background: var(--color-pos-status-unavailable);
}

.dashboard-card__ribbon--updated[b-4u00v9d1qz] {
    width: 66px;
    height: 51px;
    background: var(--color-brand-primary);
}

.dashboard-card__ribbon-label[b-4u00v9d1qz] {
    position: absolute;
    color: #fff;
    font-weight: var(--font-weight-semibold);
    line-height: normal;
    text-align: center;
    text-transform: uppercase;
    transform-origin: center center;
}

.dashboard-card__ribbon--new .dashboard-card__ribbon-label[b-4u00v9d1qz] {
    top: 10px;
    left: -2px;
    width: 44px;
    font-size: 10px;
    transform: rotate(-39deg);
}

.dashboard-card__ribbon--updated .dashboard-card__ribbon-label[b-4u00v9d1qz] {
    top: 12px;
    left: -3px;
    width: 54px;
    font-size: 9px;
    letter-spacing: -0.35px;
    transform: rotate(-38deg);
}

.dashboard-card__thumbnail-wrap[b-4u00v9d1qz] {
    position: relative;
    flex-shrink: 0;
    margin-bottom: 20px;
}

.dashboard-card__thumbnail[b-4u00v9d1qz] {
    width: 100%;
    height: 150px;
    background: #e5e7eb;
    position: relative;
    overflow: hidden;
    border-radius: var(--style-border-radius);
}

.dashboard-card__thumbnail[b-4u00v9d1qz],
.dashboard-card__thumbnail[b-4u00v9d1qz]  * {
    border: none !important;
}

.dashboard-card__thumbnail-placeholder[b-4u00v9d1qz] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
}

.dashboard-card__thumbnail--loaded[b-4u00v9d1qz] {
    background: transparent;
}

.dashboard-card__thumbnail--loaded .dashboard-card__thumbnail-placeholder[b-4u00v9d1qz] {
    display: none;
}

[b-4u00v9d1qz] .dashboard-card__menu-btn {
    position: absolute;
    top: 0;
    right: 0;
    z-index: 3;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 28px;
    padding: 0;
    background: rgb(26 26 46 / 88%);
    border: none;
    border-radius: 4px;
    cursor: pointer;
}

.dashboard-card__avatar[b-4u00v9d1qz] {
    position: absolute;
    bottom: -18px;
    left: 0;
    z-index: 2;
}

.dashboard-card__body[b-4u00v9d1qz] {
    flex: 1;
    min-height: 0;
    display: flex;
    flex-direction: column;
}

.dashboard-card__body--with-avatar[b-4u00v9d1qz] {
    padding-top: 8px;
}

.dashboard-card__title[b-4u00v9d1qz] {
    flex-shrink: 0;
    margin: 0 0 10px;
    color: var(--color-surface-app);
    font-size: 18px;
    font-weight: var(--font-weight-semibold);
    line-height: normal;
}

.dashboard-card__meta[b-4u00v9d1qz] {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    margin-bottom: 12px;
}

.dashboard-card__meta-pills[b-4u00v9d1qz] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
}

.dashboard-card__date[b-4u00v9d1qz] {
    flex-shrink: 0;
    color: #666;
    font-size: 12px;
    font-style: italic;
    font-weight: var(--font-weight-medium);
    line-height: normal;
    white-space: nowrap;
}

.dashboard-card__description[b-4u00v9d1qz] {
    flex-shrink: 0;
    margin: 0;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
    text-overflow: ellipsis;
    color: #666;
    font-size: 12px;
    font-style: italic;
    font-weight: var(--font-weight-medium);
    line-height: normal;
}

.dashboard-card__footer[b-4u00v9d1qz] {
    flex-shrink: 0;
    margin-top: 24px;
}

.dashboard-card__footer[b-4u00v9d1qz]  button {
    width: 100%;
    margin: 0;
    border-radius: 8px;
}
/* /Components/Dashboards/FilterItem.razor.rz.scp.css */
.filter-group[b-d9ey1ae950] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

@media screen and (max-width: 799px) {
	.filter-group[b-d9ey1ae950] {
		width: 100%;
		min-width: 0;
	}

	.filter-group[b-d9ey1ae950]  fluent-select {
		display: block;
		width: 100%;
		min-width: 0 !important;
	}

	.filter-group[b-d9ey1ae950]  fluent-select::part(control) {
		width: 100%;
		box-sizing: border-box;
	}
}

@media screen and (min-width: 800px) {
	.filter-group[b-d9ey1ae950] {
		width: max-content;
		max-width: 100%;
		min-width: 0;
	}

	.filter-group[b-d9ey1ae950]  fluent-select {
		width: max-content;
		min-width: 0;
	}

	.filter-group[b-d9ey1ae950]  fluent-select::part(control) {
		width: max-content;
		min-width: 0;
		box-sizing: border-box;
	}

	.filter-group[b-d9ey1ae950]  fluent-select::part(listbox) {
		width: max-content;
		min-width: 100%;
	}
}

.filter-group label[b-d9ey1ae950] {
    font-size: 12px;
    font-weight: 600;
    color: var(--neutral-foreground-hint);
    text-transform: uppercase;
    letter-spacing: 0.04em;
}
/* /Components/Dashboards/FilterToolbar.razor.rz.scp.css */
.dashboard-filters[b-vvhu10ivqo] {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    align-items: flex-end;
    background: var(--color-neutral-50);
	border: 1px solid var(--color-border-light);
    border-radius: 8px;
    padding: 12px 16px;
}

@media screen and (max-width: 799px) {
	.dashboard-filters[b-vvhu10ivqo] {
		flex-direction: column;
		align-items: stretch;
	}
}
/* /Components/Dashboards/Kpi.razor.rz.scp.css */
/*
 * Nothing here declares a font size or weight. Every one resolves through the type scale in
 * Styles/VariablesAndMixins/_typography.scss - this card used to carry 32px / 13px / 12px / 11px
 * literals plus a set of rem overrides in its media queries, which is why it never matched the cards
 * underneath it.
 */

.kpi[b-sbgu6xbbl5] {
	--kpi-tone: var(--color-neutral-600);

	/* Named, so the queries at the foot of the file cannot bind to some outer container a page has
	   declared. The card's own width never depends on its contents - the grid track sizes it - so
	   inline-size containment costs nothing here. */
	container-type: inline-size;
	container-name: kpi;

	display: flex;
	flex-direction: column;
	gap: 5px;
	box-sizing: border-box;
	height: 100%;
	min-width: 0;
	padding: 18px;
	/*background: var(--color-neutral-0);*/
	background: color-mix(in srgb, var(--kpi-tone) 7.5%, #FFFFFF);
	border: 1px solid var(--rc-border-section);
	box-shadow: var(--rc-shadow-card);
	border-radius: var(--style-border-radius);
	animation: slideIn 0.3s ease-out;
}

/* The tile is 32px, so the head is at least 32px whether the label runs to one line or two, and the
   values line up across the row without anything having to measure them. */
.kpi__head[b-sbgu6xbbl5] {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 12px;
	min-height: 32px;
}

.kpi__label[b-sbgu6xbbl5] {
	min-width: 0;
	color: var(--color-neutral-600);
}

.kpi__tile[b-sbgu6xbbl5] {
	width: 32px;
	height: 32px;
	flex: none;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: var(--style-border-radius);
	background: color-mix(in srgb, var(--kpi-tone) 14%, transparent);
}

/* Wraps rather than truncates. The old card ellipsised the value on narrow screens, which turns
   $12,345 into $12,3... - a KPI that cannot be read is worse than one that takes two lines. */
.kpi__value[b-sbgu6xbbl5] {
	min-width: 0;
	color: var(--color-neutral-900);
	overflow-wrap: anywhere;
}

/* The full figure shows and the shortened one hides until a query at the foot of the file swaps them.
   This way round because a card whose caller supplied no shortened figure has no second span at all,
   and the one figure it does have must not be the hidden one. */
.kpi__value-condensed[b-sbgu6xbbl5] {
	display: none;
}

/* Pushed to the bottom so the sublabels line up across a row of cards whose values wrapped
   differently. */
.kpi__foot[b-sbgu6xbbl5] {
	margin-top: auto;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 4px 10px;
	color: var(--color-neutral-600);
}

.kpi__direction[b-sbgu6xbbl5] {
	--kpi-direction: var(--color-neutral-400);

	display: inline-flex;
	align-items: center;
	gap: 5px;
	color: var(--kpi-direction);
}

/* ---------------------------------------------------------------------------------------------
   Between tablet and desktop the cards are narrow enough that a 32px figure crowds everything else.
   --------------------------------------------------------------------------------------------- */

@media screen and (max-width: 1200px) {
	.kpi__value[b-sbgu6xbbl5] {
		font-size: var(--font-size-xlarge);
	}
}

/* ---------------------------------------------------------------------------------------------
   Phones. The card becomes one strip: tile, label and value on a line, supporting text under it.
   Same DOM - the head stops being a box and hands its two children to the card's own grid.
   --------------------------------------------------------------------------------------------- */

@media screen and (max-width: 800px) {
	.kpi[b-sbgu6xbbl5] {
		display: grid;
		grid-template-columns: auto minmax(0, 1fr) auto;
		grid-template-areas:
			"tile label value"
			"tile foot  value";
		align-items: center;
		column-gap: 12px;
		row-gap: 3px;
		padding: 12px 14px;
	}

	.kpi__head[b-sbgu6xbbl5] {
		display: contents;
	}

	.kpi__tile[b-sbgu6xbbl5] {
		grid-area: tile;
	}

	.kpi__label[b-sbgu6xbbl5] {
		grid-area: label;
	}

	.kpi__value[b-sbgu6xbbl5] {
		grid-area: value;
		text-align: right;
		white-space: nowrap;
		font-size: var(--font-size-xlarge);
	}

	/* Spans one column, not two. An item spanning the flexible column and the value's intrinsic one
	   has its whole max-content charged to the intrinsic track, which made the card wider than the
	   phone it was drawn for. */
	.kpi__foot[b-sbgu6xbbl5] {
		grid-area: foot;
		margin-top: 0;
		min-width: 0;
	}
}

/* ---------------------------------------------------------------------------------------------
   Full figure or shortened figure.

   A container query rather than a media query, because what decides this is how wide the card ended
   up and auto-fit in KpiGrid means that does not follow from the viewport - the same 1400px page
   gives 270px cards with five of them and 190px cards with seven.

   Each threshold is the card width the longest figure we choose to guarantee - $123,456.78 - needs
   at that font size. Measured against Poppins Bold, allowing for the -.02em on .text-display, plus
   the 18px of padding on each side of the card:

     32px figure    183px of text + 36px padding  ->  shorten under 220px
     24px figure    137px of text + 36px padding  ->  shorten under 175px

   Two mutually exclusive media queries rather than one threshold, because .kpi__value is 32px above
   1200px and 24px below it: a single number tuned for the larger size would shorten tablet cards
   that had the room. Mutually exclusive so neither has to undo the other.

   Below 800px the card is a full-width strip and so always clears the threshold - the full figure
   shows, which the same arithmetic says fits in the space left beside the label.

   A seven-figure value ($1,234,567.89 wants 246px at 32px) still overflows a card sitting between
   the threshold and its own requirement. The overflow-wrap on .kpi__value is the backstop there, as
   it was for every value before this.

   One thing worth knowing if you retune these: the font-variant-numeric: tabular-nums on
   .text-display buys nothing. Poppins ships no `tnum` feature, so its digits stay proportional - a
   '1' is .376em against a '4' at .677em - and a figure's width does not follow from its length. Any
   threshold here has to come from measuring the actual glyphs.
   --------------------------------------------------------------------------------------------- */

@media screen and (min-width: 1201px) {
	@container kpi (max-width: 219px) {
		.kpi--condensable .kpi__value-real[b-sbgu6xbbl5] {
			display: none;
		}

		.kpi--condensable .kpi__value-condensed[b-sbgu6xbbl5] {
			display: inline;
		}
	}
}

@media screen and (max-width: 1200px) {
	@container kpi (max-width: 174px) {
		.kpi--condensable .kpi__value-real[b-sbgu6xbbl5] {
			display: none;
		}

		.kpi--condensable .kpi__value-condensed[b-sbgu6xbbl5] {
			display: inline;
		}
	}
}
/* /Components/Dashboards/KpiGrid.razor.rz.scp.css */
/*
 * The KPI row.
 *
 * auto-fit does the work: the same declaration gives five across on a wide desktop and steps down
 * through four, three and two as the space runs out, with no breakpoint per count. Pages put anywhere
 * between two and six cards in here, so a fixed column count was never going to hold.
 */

section.kpi-grid[b-dkn7i99j1x] {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
	align-items: stretch;
	gap: 12px;
}

section.kpi-grid[b-dkn7i99j1x]  > * {
	height: 100%;
	min-width: 0;
}

/* On a phone they stack. Each card is a compact strip at this width - see Kpi.razor.css - so five of
   them is a short list rather than five screens of scrolling. */
@media screen and (max-width: 800px) {
	/* minmax(0, 1fr) rather than 1fr: a bare `1fr` is `minmax(auto, 1fr)`, and the auto floor lets a
	   card's content hold the track open wider than the phone. */
	section.kpi-grid[b-dkn7i99j1x] {
		grid-template-columns: minmax(0, 1fr);
		gap: 8px;
	}

	section.kpi-grid[b-dkn7i99j1x]  > * {
		height: auto;
	}
}
/* /Components/DataCollection/FormDefinitionRenderer.razor.rz.scp.css */
/*
 * The one way a form is drawn, wherever it is shown: the fill-out panel, the preview dialog and the
 * template catalogue all render through here.
 *
 * Type comes from the role classes in _typography.scss - nothing here sets a font size. The form
 * title deliberately sits at .text-heading (16px), a step below the .text-h3 modal and panel titles
 * it appears under; it previously ran at 1.25rem (20px) and so outsized the dialog that contained it.
 *
 * The question rows themselves are global (.veleo-form-question in _forms.scss) because they are
 * produced by MetadataDtoCollectionInput, which is a different component.
 */

.fdr-form[b-fi6md6rgs8] {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.fdr-form__header[b-fi6md6rgs8] {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.fdr-form__title[b-fi6md6rgs8] {
    margin: 0;
    color: var(--color-neutral-900);
}

.fdr-form__intro[b-fi6md6rgs8] {
    margin: 0;
    color: var(--color-neutral-600);
}

.fdr-form__section[b-fi6md6rgs8] {
    border: 1px solid var(--color-neutral-200);
    border-radius: var(--style-border-radius);
    overflow: hidden;
}

/* Symmetric padding. The header used to run 14px top against 10px bottom, and the section was a flex
   column with a 12px gap on top of that, which read as the heading sitting high in its own band. */
.fdr-form__section-header[b-fi6md6rgs8] {
    padding: 14px 16px;
    /* A step darker than the row banding below, which is neutral-100, so the header still reads as a
       header rather than as the first shaded question. */
    background: var(--color-neutral-150);
    border-bottom: 1px solid var(--color-neutral-200);
}

.fdr-form__section-title[b-fi6md6rgs8] {
    margin: 0;
    color: var(--color-neutral-800);
}

.fdr-form__section-intro[b-fi6md6rgs8] {
    margin: 6px 0 0;
    color: var(--color-neutral-500);
}

/* No padding of its own: the question rows are banded, so they have to reach the section's edges. */
.fdr-form__section-body[b-fi6md6rgs8] {
    padding: 0;
}

/* -- Submitted answers (ShowResponsesOnly) ----------------------------------------------------- */

.fdr-answer__prompt[b-fi6md6rgs8] {
    color: var(--color-neutral-600);
    margin-bottom: 2px;
}

.fdr-answer__value[b-fi6md6rgs8] {
    color: var(--color-neutral-900);
    white-space: pre-wrap;
    overflow-wrap: anywhere;
}

.fdr-answer__value--empty[b-fi6md6rgs8] {
    color: var(--color-neutral-400);
    font-style: italic;
}
/* /Components/DataCollection/FormQuestionRow.razor.rz.scp.css */
/* ── Row shell ─────────────────────────────────────────────────────── */
.fq-row[b-xa5t5vdqa7] {
    display: flex;
    align-items: center;
    gap: 10px;
    background: #fff;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    padding: 8px 10px 8px 8px;
    min-height: 48px;
    transition: border-color 0.15s, box-shadow 0.15s;
}

.fq-row:hover[b-xa5t5vdqa7] {
    border-color: #cbd5e1;
}

.fq-row--drag-over[b-xa5t5vdqa7] {
    border-color: #7c5295;
    box-shadow: 0 0 0 3px rgba(124, 82, 149, 0.15);
}

/* ── Drag handle ───────────────────────────────────────────────────── */
.fq-drag[b-xa5t5vdqa7] {
    color: #d1d5db;
    cursor: grab;
    font-size: 16px;
    flex-shrink: 0;
    transition: color 0.1s;
}

.fq-row:hover .fq-drag[b-xa5t5vdqa7] {
    color: #94a3b8;
}

/* ── Question dropdown ─────────────────────────────────────────────── */
.fq-select[b-xa5t5vdqa7] {
    flex: 1;
    min-width: 0;
}

.fq-select fluent-select[b-xa5t5vdqa7] {
    width: 100%;
}

/* ── Required switch ───────────────────────────────────────────────── */
.fq-required[b-xa5t5vdqa7] {
    flex-shrink: 0;
    white-space: nowrap;
}
/* /Components/DataCollection/FormSectionEditor.razor.rz.scp.css */
/* ── Section card ──────────────────────────────────────────────────── */
.fse-section[b-os31mbvzzd] {
    border: 1px solid #e2e8f0;
    border-radius: 10px;
    background: #fff;
    margin-bottom: 16px;
    transition: border-color 0.15s, box-shadow 0.15s;
}

.fse-section--drag-over[b-os31mbvzzd] {
    border-color: #7c5295;
    box-shadow: 0 0 0 3px rgba(124, 82, 149, 0.15);
}

/* ── Section header ────────────────────────────────────────────────── */
.fse-section__header[b-os31mbvzzd] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 14px;
    background: #f8fafc;
    border-bottom: 1px solid #e2e8f0;
    border-radius: 10px 10px 0 0;
    cursor: grab;
}

.fse-section__drag[b-os31mbvzzd] {
    color: #d1d5db;
    font-size: 16px;
    flex-shrink: 0;
    transition: color 0.1s;
}

.fse-section__header:hover .fse-section__drag[b-os31mbvzzd] {
    color: #94a3b8;
}

.fse-section__number[b-os31mbvzzd] {
    font-size: 13px;
    font-weight: 600;
    color: #374151;
    flex: 1;
}

/* ── Section fields ────────────────────────────────────────────────── */
.fse-section__fields[b-os31mbvzzd] {
    padding: 14px 14px 0;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.fse-section__field[b-os31mbvzzd] {
    display: grid;
    gap: 20px;
	grid-template-columns: 165px 1fr;
}

.fse-section__label[b-os31mbvzzd] {
    color: #6b7280;
	text-align: right;
	padding-top: 7px;
	font-weight: var(--font-weight-medium);
}

/* ── Questions area ────────────────────────────────────────────────── */
.fse-section__questions[b-os31mbvzzd] {
    padding: 14px;
	display: grid;
	gap: 20px;
	grid-template-columns: 165px 1fr;
}

.fse-section__questions-label[b-os31mbvzzd] {
	color: #6b7280;
	text-align: right;
	padding-top: 15px;
	font-weight: var(--font-weight-medium);
}

.fse-section__question-list[b-os31mbvzzd] {
    display: flex;
    flex-direction: column;
    gap: 6px;
    margin-bottom: 10px;
}

.fse-section__add-question[b-os31mbvzzd] {
	margin-left: 220px;
	margin-bottom: 20px;
}
/* /Components/Dialogs/ContactFormsDialog.razor.rz.scp.css */
/*
 * Send or fill out a form for a contact.
 *
 * The list, the row, the intro line and the footer are shared dialog chrome (.veleo-dialog-* and
 * .veleo-modal-footer-* in _dialogs.scss) so this modal and Browse Form Templates read as the same
 * screen. What is left here is the module accent the rows pick up, and the send failure line.
 */

.cfd-list[b-0q4zum9e14] {
    --veleo-dialog-row-accent: var(--color-module-settings);
    --veleo-dialog-row-accent-light: var(--color-module-settings-light);
}

.cfd-error[b-0q4zum9e14] {
    margin: 0 0 12px;
    padding: 8px 12px;
    background: var(--color-status-danger-light);
    border-left: 3px solid var(--color-status-danger);
    border-radius: var(--style-border-radius);
    font-size: var(--font-size-small);
    color: var(--color-status-danger);
}
/* /Components/Dialogs/DashboardOptionsDialog.razor.rz.scp.css */
.dashboard-options-category[b-oa9yvd64mm] {
	margin-top: 16px;
}
/* /Components/Dialogs/FileRenameDialog.razor.rz.scp.css */
/* /Components/Dialogs/FormCatalogueDialog.razor.rz.scp.css */
/*
 * Browse Form Templates.
 *
 * Two views share one modal: the scrolling template list, and the details view for a single template.
 * All type comes from the role classes in _typography.scss - nothing here declares a font size.
 *
 * The list, the row, the intro line and the footer are shared dialog chrome (.veleo-dialog-* and
 * .veleo-modal-footer-* in _dialogs.scss); they were written here first and were hoisted out when
 * ContactFormsDialog needed the same row. What is left is this modal's own: the module accent the
 * rows pick up, the dimming on an already-deployed template, and the details view.
 */

.fcd-list[b-snlpx14gul] {
    --veleo-dialog-row-accent: var(--color-module-settings);
    --veleo-dialog-row-accent-light: var(--color-module-settings-light);
}

/* Already provisioned from this template. The "Added" badge says so; the thumbnail is dimmed so the
   row reads as spent at a glance. */
.fcd-row--added .veleo-dialog-row__thumb[b-snlpx14gul] {
    opacity: 0.6;
}

/* -- Template details ------------------------------------------------------------------------- */

.fcd-detail__description[b-snlpx14gul] {
    margin: 0 0 16px;
    color: var(--color-neutral-600);
}

.fcd-detail__preview-label[b-snlpx14gul] {
    margin: 20px 0 10px;
    color: var(--color-neutral-500);
}

.fcd-detail__preview[b-snlpx14gul] {
    /* Holds the loading overlay while the preview is fetched. */
    min-height: 120px;
    padding: 16px;
    border: 1px solid var(--color-neutral-200);
    border-radius: var(--style-border-radius);
    background: var(--color-neutral-0);
}
/* /Components/Dialogs/FormPreviewDialog.razor.rz.scp.css */
.fpd-body[b-786jq716t1] {
    padding: 4px 0 8px;
}
/* /Components/Dialogs/PickDashboardDialog.razor.rz.scp.css */
.pick-dashboard-dialog[b-139f7kze8g]{
	max-height: 80vh;
	display: flex;
	flex-direction: column;
	box-sizing: border-box;
}

.pick-dashboard-dialog[b-139f7kze8g]  .fluent-dialog-header,
.pick-dashboard-dialog[b-139f7kze8g]  .fluent-dialog-footer{
	flex-shrink: 0;
}

.pick-dashboard-dialog[b-139f7kze8g]  .fluent-dialog-body{
	flex: 1 1 auto;
	min-height: 0;
}

.pick-dashboard-dialog .veleo-modal-content[b-139f7kze8g]{
	display: flex;
	flex-direction: column;
	min-height: 0;
	height: 100%;
}

/* EntityLoadingWrapper renders its own div between the content and the list, so it has to pass the flex column down. */
.pick-dashboard-dialog .veleo-modal-content[b-139f7kze8g]  > div{
	display: flex;
	flex-direction: column;
	min-height: 0;
}

.pick-result-list[b-139f7kze8g]{
	flex: 1 1 auto;
	min-height: 0;
	overflow-y: auto;
	overflow-x: hidden;
	overscroll-behavior: contain;

	div.pick-result{
		display: grid;
		grid-template-columns: auto 60px;
		align-items: center;

		div.indicator{
			justify-items: right;
			align-items: center;
			display: flex;
			font-size: 8pt;
			color: #555;
		}
	}
}

[b-139f7kze8g] .fluent-input-label{
	color: var(--color-background);
	font-weight: 600;
	margin: 0;
	padding: 0;
}
/* /Components/Dialogs/PlannedAbsenceConfirmDialog.razor.rz.scp.css */
.planned-absence-confirm p[b-xf5oo9yqbl] {
	margin: 0 0 12px;
}

.planned-absence-confirm p:last-child[b-xf5oo9yqbl] {
	margin-bottom: 0;
}
/* /Components/Dialogs/TestSendEmailDialog.razor.rz.scp.css */
/* /Components/Dialogs/VeleoConfirmationDialog.razor.rz.scp.css */
.veleo-modal-content[b-xwp4c9jfb7]{
	overflow-wrap: anywhere;
	overflow: hidden;
}
/* /Components/Dialogs/VeleoMessageDialog.razor.rz.scp.css */
.veleo-modal-content[b-5mi5mmhama]{
	overflow-wrap: anywhere;
	overflow: hidden;
}
/* /Components/Layout/Cards/CardLayout.razor.rz.scp.css */
.card-layout[b-vgsmbx1b8r]{
	background: white;
	border-radius: 12px;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.04);
	border: 1px solid #e9ecef;
	overflow: hidden;

	animation: slideIn 0.3s ease-out;
	
	.card-layout__header{
		padding: 12px 15px;
		border-bottom: 1px solid #e9ecef;
		display: flex;
		justify-content: space-between;
		align-items: center;
	}
	
	.card-title[b-vgsmbx1b8r]{
		display: flex;
		align-items: center;
		gap: 12px;
	}

	.card-content[b-vgsmbx1b8r] {
		padding: 12px;
	}
}
/* /Components/Layout/DateRangePicker/DateRangePicker.razor.rz.scp.css */
/* ── Trigger button ─────────────────────────────────────────────────── */
.date-range-picker[b-swjcljrqa3] {
    position: relative;
    display: inline-block;
}

.drp-trigger[b-swjcljrqa3] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding: 7px 12px;
    background: #fff;
    border: 1px solid #e0e0e0;
    border-radius: 6px;
    cursor: pointer;
    min-width: 170px;
    font-size: 14px;
    color: #444;
    transition: border-color 0.15s;
    white-space: nowrap;
}

.drp-trigger:hover[b-swjcljrqa3] {
    border-color: var(--color-brand-accent, #036ac4);
}

.drp-trigger__label[b-swjcljrqa3] {
    flex: 1;
    text-align: left;
}

/* ── Backdrop (click-outside-to-close) ─────────────────────────────── */
.drp-backdrop[b-swjcljrqa3] {
    position: fixed;
    inset: 0;
    z-index: 999;
}

/* ── Popup container ────────────────────────────────────────────────── */
.drp-popup[b-swjcljrqa3] {
    position: absolute;
    top: calc(100% + 6px);
    left: 0;
    z-index: 1000;
    background: #fff;
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    box-shadow: 0 6px 28px rgba(0, 0, 0, 0.13);
    padding: 16px;
    min-width: 720px;
    animation: fadeIn 0.15s ease-out;
}

/* ── Date input boxes ───────────────────────────────────────────────── */
.drp-inputs[b-swjcljrqa3] {
    display: flex;
    gap: 12px;
    margin-bottom: 16px;
}

.drp-input[b-swjcljrqa3] {
    display: flex;
    align-items: center;
    gap: 8px;
    flex: 1;
    padding: 7px 12px;
    border: 2px solid #e0e0e0;
    border-radius: 6px;
    font-size: 14px;
    color: #444;
    background: #fff;
    cursor: default;
    transition: border-color 0.15s;
}

.drp-input--active[b-swjcljrqa3] {
    border-color: var(--color-brand-accent, #036ac4);
}

/* ── Body: calendars + presets ──────────────────────────────────────── */
.drp-body[b-swjcljrqa3] {
    display: grid;
    grid-template-columns: 1fr 1fr auto;
    gap: 0 16px;
}

/* ── Calendar ───────────────────────────────────────────────────────── */
.drp-calendar[b-swjcljrqa3] {
    min-width: 260px;
    user-select: none;
}

.drp-calendar__header[b-swjcljrqa3] {
    display: grid;
    grid-template-columns: 28px 1fr 28px;
    align-items: center;
    padding-bottom: 10px;
    text-align: center;
}

.drp-month-label[b-swjcljrqa3] {
    font-weight: 700;
    font-size: 14px;
    color: #222;
}

.drp-nav[b-swjcljrqa3] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    background: none;
    border: none;
    cursor: pointer;
    border-radius: 4px;
    font-size: 20px;
    line-height: 1;
    color: #444;
    padding: 0;
    transition: background 0.1s;
}

.drp-nav:hover[b-swjcljrqa3] {
    background: #f0f0f0;
}

.drp-nav-placeholder[b-swjcljrqa3] {
    width: 28px;
}

/* ── Calendar grid ──────────────────────────────────────────────────── */
.drp-calendar__grid[b-swjcljrqa3] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.drp-weekdays[b-swjcljrqa3] {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    text-align: center;
    padding-bottom: 4px;
}

.drp-weekdays span[b-swjcljrqa3] {
    font-size: 12px;
    font-weight: 600;
    color: #9ca3af;
    padding: 0 0 2px;
}

.drp-week[b-swjcljrqa3] {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
}

/* ── Day cells (wrapper spans for range bar) ────────────────────────── */
.drp-cell[b-swjcljrqa3] {
    display: flex;
    align-items: center;
    justify-content: center;
}

.drp-cell--in-range[b-swjcljrqa3] {
    background: #cce4f6;
}

.drp-cell--range-start[b-swjcljrqa3] {
    background: linear-gradient(to right, transparent 50%, #cce4f6 50%);
}

.drp-cell--range-end[b-swjcljrqa3] {
    background: linear-gradient(to left, transparent 50%, #cce4f6 50%);
}

/* ── Day buttons ────────────────────────────────────────────────────── */
.drp-day[b-swjcljrqa3] {
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: none;
    background: none;
    border-radius: 50%;
    font-size: 13px;
    color: #333;
    cursor: pointer;
    transition: background 0.1s;
    flex-shrink: 0;
    padding: 0;
    line-height: 1;
    position: relative;
    z-index: 1;
}

.drp-day:hover[b-swjcljrqa3] {
    background: #e8e8e8;
}

.drp-day--other-month[b-swjcljrqa3] {
    color: #bbb;
}

.drp-day--today[b-swjcljrqa3] {
    font-weight: 700;
}

.drp-day--selected[b-swjcljrqa3] {
    background: var(--color-brand-accent, #036ac4) !important;
    color: #fff !important;
    border-radius: 50%;
}

.drp-day--selected:hover[b-swjcljrqa3] {
    background: var(--color-brand-accent-secondary, #047bd5) !important;
}

/* ── Preset list ────────────────────────────────────────────────────── */
.drp-presets[b-swjcljrqa3] {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 140px;
    padding-left: 8px;
    border-left: 1px solid #f0f0f0;
}

.drp-preset[b-swjcljrqa3] {
    width: 100%;
    padding: 8px 12px;
    border: none;
    background: none;
    text-align: left;
    font-size: 14px;
    color: var(--color-brand-accent, #036ac4);
    cursor: pointer;
    border-radius: 4px;
    transition: background 0.1s;
    white-space: nowrap;
}

.drp-preset:hover[b-swjcljrqa3] {
    background: #f0f7ff;
}

.drp-preset--active[b-swjcljrqa3] {
    background: var(--color-brand-accent, #036ac4) !important;
    color: #fff !important;
}

.drp-preset--active:hover[b-swjcljrqa3] {
    background: var(--color-brand-accent-secondary, #047bd5) !important;
}
/* /Components/Layout/Tables/TableColumn.razor.rz.scp.css */
/* /Components/Layout/Tables/TableLayout.razor.rz.scp.css */
.table-layout[b-bnfvecbh8m]{
	display: grid;
	
	.table-header{
		display: grid;
		grid-column: 1 / -1;
		grid-template-columns: subgrid;
		gap: 16px;
		padding: 12px 16px;
		background: #f8f9fa;
		border-radius: 8px;
		font-size: 12px;
		font-weight: 600;
		color: #6c757d;
		text-transform: uppercase;
		letter-spacing: 0.5px;
		margin-bottom: 8px;
	}
	
	.table-body[b-bnfvecbh8m]{
		display: grid;
		grid-column: 1 / -1;
		grid-template-columns: subgrid;
		
		.table-row{
			display: grid;
			grid-column: 1 / -1;
			grid-template-columns: subgrid;
			border-bottom: 1px solid #e9ecef;
			gap: 16px;
			padding: 16px;
			align-items: center;
			transition: all 0.2s;
			cursor: pointer;

			.col{
				display: flex;
				
				&.stacked{
					flex-direction: column;
					gap: 4px;
				}
				
				&.right[b-bnfvecbh8m]{
					justify-content: flex-end;
				}
			}
		}
		
		.table-row.disable-row-click[b-bnfvecbh8m]{
			cursor: default;
		}
		
		.table-row:not(.disable-row-click):hover[b-bnfvecbh8m]{
			background: #f8f9fa;
		}
		
		.table-row:last-child[b-bnfvecbh8m]{
			border-bottom: none;
		}
	}
}

.table-row[b-bnfvecbh8m]  span{
	display: flex;
	align-items: center;
	width: max-content;
	gap: 10px;
}

.table-row[b-bnfvecbh8m]  span.strong{
	font-size: 14px;
	font-weight: 600;
	color: #212529;
}

.table-row[b-bnfvecbh8m]  span.soft{
	font-size: 12px;
	color: #6c757d;
	font-weight: 400;
}

.table-row[b-bnfvecbh8m]  span.alert{
	background: #FEF2F2;
	border-color: #FEE2E2;
	color: #991B1B;
	font-weight: 600;
	padding: 4px 8px;
	border-radius: 4px;
	border-width: 1px;
	border-style: solid;
}
/* /Components/Layout/Tabs/MobileTabPanel.razor.rz.scp.css */
.mobile-tab-panel[b-isyv0nuhde]{
	
	display: grid;
	grid-template-rows: 30px auto;
	height: 100%;
	overflow: hidden;
	
	@media (min-width: 768px){
		grid-template-rows: auto;[b-isyv0nuhde]
	}
	
	& .tab-header{
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 10px;
		
		div{
			display: flex;
			align-items: center;
			justify-content: center;
			cursor: pointer;
		}
		
		div.active[b-isyv0nuhde]{
			background-color: #FFF;
			font-weight: bold;
		}
		
		@media (min-width: 768px){
			display: none;[b-isyv0nuhde]
		}
	}
	
	& .tab-content[b-isyv0nuhde]{
		
		display: grid;
		grid-template-columns: 1fr;
		min-height: 0;
		height: 100%;
		overflow: hidden;
		
		@media (min-width: 768px){
			grid-template-columns: 1fr 2fr;[b-isyv0nuhde]
		}
		
		.tab-content-left{
			background-color: #FFF;
			padding: 25px;
			height: 100%;
			overflow-y: auto;
		}

		.tab-content-right[b-isyv0nuhde]{
			height: 100%;
			overflow-y: auto;
		}	
	}
}
/* /Components/Layout/Tabs/TabControl.razor.rz.scp.css */
section.tab-control-container[b-01o74hdakl]{
	display: grid;
	grid-template-rows: auto 1fr;
	height: 100%;
	
	border-left: 1px solid var(--color-form-component-border);
}

section.tab-content[b-01o74hdakl]{
	overflow-y: scroll;
}

.standard-padding[b-01o74hdakl]{
	padding: 24px;
}

nav.tab-control[b-01o74hdakl]{
	background-color: var(--tab-bg-color, white);
	display: flex;
	flex-wrap: nowrap;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
	border-bottom: 1px solid var(--color-form-component-border);
	
	button.tab{
		background-color: transparent;
		border: none;
		color: #777;
		cursor: pointer;
		font-size: 13px;
		font-weight: 600;
		flex: 1;
		min-height: 48px;
		text-align: center;
		text-transform: uppercase;
		transition: background-color 0.2s ease;
		padding: 0 20px;
		max-width: 200px;
		
		&:hover{
			background-color: #EEE;
		}
		
		&.active[b-01o74hdakl]{
			background-color: var(--tab-active-color, #333);
			color: #FFF;
		}
	}
}
/* /Components/Layout/Tabs/TabPanel.razor.rz.scp.css */
/* /Components/Marketing/AddConditionBar.razor.rz.scp.css */
/* ── Bar layout ────────────────────────────────────────────────────── */
.acb-bar[b-9wow5xaruc] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px 0 4px 40px;
    gap: 12px;
}
/* /Components/Marketing/ConditionRow.razor.rz.scp.css */
/* ── Row shell ─────────────────────────────────────────────────────── */
.cr-row[b-mi2bqnjo9h] {
    display: flex;
    align-items: center;
    gap: 8px;
    background: #fff;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    padding: 7px 10px 7px 8px;
    min-height: 48px;
    transition: border-color 0.15s, box-shadow 0.15s;
}

.cr-row:hover[b-mi2bqnjo9h] {
    border-color: #cbd5e1;
}

.cr-row--drag-over[b-mi2bqnjo9h] {
    border-color: #7c5295;
    box-shadow: 0 0 0 3px rgba(124, 82, 149, 0.15);
}

/* ── Drag handle ───────────────────────────────────────────────────── */
.cr-drag[b-mi2bqnjo9h] {
    color: #d1d5db;
    cursor: grab;
    font-size: 16px;
    flex-shrink: 0;
    transition: color 0.1s;
}

.cr-row:hover .cr-drag[b-mi2bqnjo9h] {
    color: #94a3b8;
}

/* ── DataPoint pill ────────────────────────────────────────────────── */
.cr-datapoint[b-mi2bqnjo9h] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 6px;
    padding: 5px 10px;
    font-size: 13px;
    font-weight: 500;
    color: #374151;
    cursor: pointer;
    white-space: nowrap;
    flex-shrink: 0;
    transition: border-color 0.15s, background 0.15s;
}

.cr-datapoint:hover[b-mi2bqnjo9h] {
    border-color: #7c5295;
    background: #faf8fc;
}

.cr-datapoint--empty[b-mi2bqnjo9h] {
    border-style: dashed;
    color: #94a3b8;
}

.cr-datapoint--empty:hover[b-mi2bqnjo9h] {
    border-color: #7c5295;
    color: #7c5295;
    background: #faf8fc;
}

.cr-datapoint__placeholder[b-mi2bqnjo9h] {
    font-style: italic;
}

.cr-datapoint__arrow[b-mi2bqnjo9h] {
    font-size: 12px;
    color: #9ca3af;
}

/* ── Value area ────────────────────────────────────────────────────── */
.cr-value-area[b-mi2bqnjo9h] {
    flex: 1;
    min-width: 0;
}

/* ── Action buttons ────────────────────────────────────────────────── */
.cr-actions[b-mi2bqnjo9h] {
    display: flex;
    align-items: center;
    gap: 2px;
    flex-shrink: 0;
    margin-left: auto;
}

.cr-action[b-mi2bqnjo9h] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    background: transparent;
    border: none;
    border-radius: 6px;
    color: #9ca3af;
    cursor: pointer;
    font-size: 15px;
    transition: background 0.1s, color 0.1s;
}

.cr-action:hover:not(:disabled)[b-mi2bqnjo9h] {
    background: #f1f5f9;
    color: #374151;
}

.cr-action--danger:hover:not(:disabled)[b-mi2bqnjo9h] {
    background: #fef2f2;
    color: #ef4444;
}

.cr-action:disabled[b-mi2bqnjo9h] {
    opacity: 0.3;
    cursor: not-allowed;
}
/* /Components/Marketing/ConditionValueInput.razor.rz.scp.css */
/* ── Wrapper ────────────────────────────────────────────────────────── */
.condition-value-input[b-jnp8ferdsp] {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
    position: relative;
}

/* ── Text / Number / Date inputs ────────────────────────────────────── */
.cvi-input[b-jnp8ferdsp] {
    border: 1px solid #e2e8f0;
    border-radius: 6px;
    padding: 5px 10px;
    font-size: 13px;
    color: #374151;
    background: #fff;
    outline: none;
    min-width: 0;
    transition: border-color 0.15s, box-shadow 0.15s;
}

.cvi-input:focus[b-jnp8ferdsp] {
    border-color: #7c5295;
    box-shadow: 0 0 0 2px rgba(124, 82, 149, 0.12);
}

.cvi-input[b-jnp8ferdsp]::placeholder {
    color: #94a3b8;
}

.cvi-input--small[b-jnp8ferdsp] {
    width: 80px;
}

.cvi-input--tiny[b-jnp8ferdsp] {
    width: 60px;
    text-align: center;
}

.cvi-input--date[b-jnp8ferdsp] {
    width: 140px;
}

/* ── Select ─────────────────────────────────────────────────────────── */
.cvi-select[b-jnp8ferdsp] {
    border: 1px solid #e2e8f0;
    border-radius: 6px;
    padding: 5px 28px 5px 10px;
    font-size: 13px;
    color: #374151;
    background-color: #fff;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 8px center;
    appearance: none;
    -webkit-appearance: none;
    outline: none;
    cursor: pointer;
    transition: border-color 0.15s, box-shadow 0.15s;
    max-width: 200px;
}

.cvi-select:focus[b-jnp8ferdsp] {
    border-color: #7c5295;
    box-shadow: 0 0 0 2px rgba(124, 82, 149, 0.12);
}

/* ── Range separator / suffix ───────────────────────────────────────── */
.cvi-range-sep[b-jnp8ferdsp] {
    color: #94a3b8;
    font-weight: 500;
    flex-shrink: 0;
}

.cvi-suffix[b-jnp8ferdsp] {
    font-size: 12px;
    color: #64748b;
    white-space: nowrap;
    flex-shrink: 0;
}

/* ── Multiselect chip container ─────────────────────────────────────── */
.cvi-multiselect[b-jnp8ferdsp] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 5px;
    position: relative;
}

/* ── Chips (selected items) ─────────────────────────────────────────── */
.cvi-chip[b-jnp8ferdsp] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    background: #ede9f3;
    border: 1px solid #c4b5d9;
    border-radius: 20px;
    padding: 3px 8px 3px 10px;
    font-size: 12px;
    font-weight: 500;
    color: #5b3a6e;
    white-space: nowrap;
    max-width: 160px;
    overflow: hidden;
    text-overflow: ellipsis;
}

.cvi-chip__remove[b-jnp8ferdsp] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: transparent;
    border: none;
    color: #7c5295;
    font-size: 14px;
    line-height: 1;
    cursor: pointer;
    padding: 0;
    flex-shrink: 0;
    opacity: 0.7;
    transition: opacity 0.1s;
}

.cvi-chip__remove:hover[b-jnp8ferdsp] {
    opacity: 1;
}

/* ── "+ Add" chip button ────────────────────────────────────────────── */
.cvi-chip--add[b-jnp8ferdsp] {
    background: #f8fafc;
    border: 1.5px dashed #cbd5e1;
    color: #7c5295;
    cursor: pointer;
    transition: border-color 0.15s, background 0.15s;
}

.cvi-chip--add:hover[b-jnp8ferdsp] {
    border-color: #7c5295;
    background: #faf8fc;
}

/* ── Dropdown ───────────────────────────────────────────────────────── */
.cvi-dropdown[b-jnp8ferdsp] {
    position: absolute;
    top: calc(100% + 6px);
    left: 0;
    z-index: 100;
    background: #fff;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);
    min-width: 220px;
    max-width: 320px;
    overflow: hidden;
}

.cvi-dropdown__search[b-jnp8ferdsp] {
    padding: 8px;
    border-bottom: 1px solid #f1f5f9;
}

.cvi-dropdown__input[b-jnp8ferdsp] {
    width: 100%;
    border: 1px solid #e2e8f0;
    border-radius: 6px;
    padding: 6px 10px;
    font-size: 13px;
    outline: none;
    box-sizing: border-box;
    background: #f8fafc;
    transition: border-color 0.15s;
}

.cvi-dropdown__input:focus[b-jnp8ferdsp] {
    border-color: #7c5295;
    background: #fff;
}

.cvi-dropdown__list[b-jnp8ferdsp] {
    max-height: 200px;
    overflow-y: auto;
    padding: 4px;
}

.cvi-dropdown__item[b-jnp8ferdsp] {
    display: block;
    width: 100%;
    padding: 7px 12px;
    background: transparent;
    border: none;
    border-radius: 5px;
    font-size: 13px;
    color: #374151;
    text-align: left;
    cursor: pointer;
    transition: background 0.1s;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.cvi-dropdown__item:hover[b-jnp8ferdsp] {
    background: #f1f5f9;
    color: #7c5295;
}

.cvi-dropdown__empty[b-jnp8ferdsp] {
    padding: 12px 16px;
    font-size: 12px;
    color: #94a3b8;
    text-align: center;
}
/* /Components/Marketing/DataPointPickerPanel.razor.rz.scp.css */
/* ── Panel shell ────────────────────────────────────────────────────── */
.dpp-panel[b-tl2213f8x4] {
    display: flex;
    flex-direction: column;
    height: 100%;
    min-height: 0;
    font-family: inherit;
}

/* ── Header ─────────────────────────────────────────────────────────── */
.dpp-header[b-tl2213f8x4] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 20px 24px 16px;
    border-bottom: 1px solid #e2e8f0;
    flex-shrink: 0;
}

.dpp-title[b-tl2213f8x4] {
    font-size: 15px;
    font-weight: 600;
    color: #0f172a;
    margin: 0;
}

.dpp-close[b-tl2213f8x4] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    background: transparent;
    border: none;
    border-radius: 6px;
    color: #94a3b8;
    font-size: 16px;
    cursor: pointer;
    transition: background 0.1s, color 0.1s;
}

.dpp-close:hover[b-tl2213f8x4] {
    background: #f1f5f9;
    color: #374151;
}

/* ── Search ─────────────────────────────────────────────────────────── */
.dpp-search[b-tl2213f8x4] {
    padding: 12px 16px;
    border-bottom: 1px solid #f1f5f9;
    flex-shrink: 0;
}

.dpp-search-input[b-tl2213f8x4] {
    width: 100%;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    padding: 8px 12px;
    font-size: 13px;
    color: #374151;
    background: #f8fafc;
    outline: none;
    box-sizing: border-box;
    transition: border-color 0.15s, box-shadow 0.15s, background 0.15s;
}

.dpp-search-input:focus[b-tl2213f8x4] {
    border-color: #7c5295;
    background: #fff;
    box-shadow: 0 0 0 2px rgba(124, 82, 149, 0.12);
}

/* ── Body (two-panel) ───────────────────────────────────────────────── */
.dpp-body[b-tl2213f8x4] {
    display: flex;
    flex: 1;
    min-height: 0;
    overflow: hidden;
}

/* ── Left: Categories ───────────────────────────────────────────────── */
.dpp-categories[b-tl2213f8x4] {
    width: 160px;
    flex-shrink: 0;
    border-right: 1px solid #f1f5f9;
    overflow-y: auto;
    padding: 6px 0;
}

.dpp-cat-btn[b-tl2213f8x4] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding: 8px 14px;
    background: transparent;
    border: none;
    font-size: 13px;
    color: #374151;
    cursor: pointer;
    text-align: left;
    gap: 8px;
    transition: background 0.1s;
}

.dpp-cat-btn:hover[b-tl2213f8x4] {
    background: #f8fafc;
}

.dpp-cat-btn--active[b-tl2213f8x4] {
    background: #ede9f3;
    color: #7c5295;
    font-weight: 600;
}

.dpp-cat-count[b-tl2213f8x4] {
    font-size: 11px;
    background: #e2e8f0;
    border-radius: 10px;
    padding: 1px 6px;
    color: #64748b;
    flex-shrink: 0;
}

.dpp-cat-btn--active .dpp-cat-count[b-tl2213f8x4] {
    background: rgba(124, 82, 149, 0.15);
    color: #7c5295;
}

/* ── Right: Data points ─────────────────────────────────────────────── */
.dpp-datapoints[b-tl2213f8x4] {
    flex: 1;
    overflow-y: auto;
    padding: 8px;
}

.dpp-dp-btn[b-tl2213f8x4] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding: 9px 12px;
    background: transparent;
    border: 1px solid transparent;
    border-radius: 6px;
    cursor: pointer;
    text-align: left;
    gap: 12px;
    transition: background 0.1s, border-color 0.1s;
}

.dpp-dp-btn:hover[b-tl2213f8x4] {
    background: #f8fafc;
    border-color: #e2e8f0;
}

.dpp-dp-btn--current[b-tl2213f8x4] {
    background: #ede9f3;
    border-color: #7c5295;
}

.dpp-dp-label[b-tl2213f8x4] {
    font-size: 13px;
    color: #374151;
    font-weight: 500;
    flex: 1;
    min-width: 0;
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
}

.dpp-dp-type[b-tl2213f8x4] {
    font-size: 11px;
    color: #94a3b8;
    background: #f1f5f9;
    border-radius: 4px;
    padding: 2px 6px;
    white-space: nowrap;
    flex-shrink: 0;
    text-transform: lowercase;
}

.dpp-dp-btn--current .dpp-dp-type[b-tl2213f8x4] {
    background: rgba(124, 82, 149, 0.12);
    color: #7c5295;
}

/* ── Empty state ────────────────────────────────────────────────────── */
.dpp-empty[b-tl2213f8x4] {
    padding: 40px 16px;
    text-align: center;
    color: #94a3b8;
    font-size: 13px;
}

/* ── Loading / error state ──────────────────────────────────────────── */
.dpp-state[b-tl2213f8x4] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 12px;
    padding: 48px 24px;
    color: #64748b;
    font-size: 13px;
    text-align: center;
    flex: 1;
}

.dpp-state--error[b-tl2213f8x4] {
    color: #ef4444;
}

.dpp-retry-btn[b-tl2213f8x4] {
    background: #fff;
    border: 1.5px solid #e2e8f0;
    border-radius: 6px;
    padding: 6px 16px;
    font-size: 12px;
    font-weight: 500;
    color: #374151;
    cursor: pointer;
    transition: border-color 0.15s, box-shadow 0.15s;
    margin-top: 4px;
}

.dpp-retry-btn:hover[b-tl2213f8x4] {
    border-color: #7c5295;
    box-shadow: 0 0 0 2px rgba(124, 82, 149, 0.1);
}
/* /Components/Marketing/GroupOperatorBadge.razor.rz.scp.css */
/* ── Outer wrapper — bridges the gap between two group cards ────────── */
.gob-wrapper[b-w5137yjnoj] {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 0;
}

.gob-line[b-w5137yjnoj] {
    width: 2px;
    height: 16px;
    background: #e2e8f0;
}

/* ── Pill ──────────────────────────────────────────────────────────── */
.gob-pill[b-w5137yjnoj] {
    display: inline-flex;
    align-items: center;
    background: #fff;
    border: 1.5px solid #e2e8f0;
    border-radius: 999px;
    padding: 3px 4px;
    gap: 2px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
}

/* ── Operator buttons ──────────────────────────────────────────────── */
.gob-btn[b-w5137yjnoj] {
    background: transparent;
    border: none;
    border-radius: 999px;
    padding: 4px 13px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.07em;
    text-transform: uppercase;
    color: #94a3b8;
    cursor: pointer;
    transition: background 0.15s, color 0.15s;
}

.gob-btn:hover[b-w5137yjnoj] {
    background: #f1f5f9;
    color: #374151;
}

.gob-btn--active[b-w5137yjnoj] {
    color: #fff !important;
}

.gob-btn--active.gob-btn--and[b-w5137yjnoj] {
    background: #ef4444;
}

.gob-btn--active.gob-btn--or[b-w5137yjnoj] {
    background: #f59e0b;
}

.gob-btn--active.gob-btn--then[b-w5137yjnoj] {
    background: #3b82f6;
}

/* ── THEN window ───────────────────────────────────────────────────── */
.gob-then-window[b-w5137yjnoj] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-left: 8px;
    padding-left: 10px;
    border-left: 1px solid #e2e8f0;
}

.gob-then-label[b-w5137yjnoj] {
    font-size: 12px;
    color: #64748b;
    font-weight: 500;
    white-space: nowrap;
}

.gob-then-n[b-w5137yjnoj] {
    width: 52px;
    border: 1px solid #e2e8f0;
    border-radius: 5px;
    padding: 3px 6px;
    font-size: 12px;
    text-align: center;
    outline: none;
    transition: border-color 0.12s;
}

.gob-then-n:focus[b-w5137yjnoj] {
    border-color: #3b82f6;
    box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.12);
}

.gob-then-unit[b-w5137yjnoj] {
    border: 1px solid #e2e8f0;
    border-radius: 5px;
    padding: 3px 6px;
    font-size: 12px;
    outline: none;
    cursor: pointer;
    transition: border-color 0.12s;
}

.gob-then-unit:focus[b-w5137yjnoj] {
    border-color: #3b82f6;
}

.gob-then-clear[b-w5137yjnoj] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    background: transparent;
    border: none;
    border-radius: 50%;
    color: #94a3b8;
    cursor: pointer;
    font-size: 13px;
    transition: background 0.1s, color 0.1s;
}

.gob-then-clear:hover[b-w5137yjnoj] {
    background: #fef2f2;
    color: #ef4444;
}
/* /Components/Marketing/NaturalLanguageSegmentInput.razor.rz.scp.css */
.nl-segment[b-5ahr4ya10l] {
    border: 1.5px dashed #cbd5e1;
    border-radius: 10px;
    overflow: hidden;
    transition: border-color 0.15s;
    margin-bottom: 12px;
}

.nl-segment--expanded[b-5ahr4ya10l] {
    border-color: #7c5295;
    border-style: solid;
}

.nl-segment__toggle[b-5ahr4ya10l] {
    display: flex;
    align-items: center;
    gap: 8px;
    width: 100%;
    padding: 10px 16px;
    background: transparent;
    border: none;
    cursor: pointer;
    font-size: 13px;
    font-weight: 500;
    color: #64748b;
    text-align: left;
    transition: background 0.12s, color 0.12s;
}

.nl-segment__toggle:hover[b-5ahr4ya10l] {
    background: #faf8fc;
    color: #7c5295;
}

.nl-segment--expanded .nl-segment__toggle[b-5ahr4ya10l] {
    color: #7c5295;
    background: #faf8fc;
    border-bottom: 1px solid #e2e8f0;
}

.nl-segment__toggle-icon[b-5ahr4ya10l] {
    font-size: 15px;
    color: #7c5295;
}

.nl-segment__toggle-label[b-5ahr4ya10l] {
    flex: 1;
}

.nl-segment__toggle-chevron[b-5ahr4ya10l] {
    font-size: 14px;
    color: #94a3b8;
}

.nl-segment__body[b-5ahr4ya10l] {
    padding: 14px 16px 12px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    background: #fff;
}

.nl-segment__textarea[b-5ahr4ya10l] {
    width: 100%;
    resize: vertical;
    border: 1px solid #e2e8f0;
    border-radius: 7px;
    padding: 10px 12px;
    font-size: 13px;
    color: #1e293b;
    line-height: 1.5;
    font-family: inherit;
    transition: border-color 0.12s, box-shadow 0.12s;
    box-sizing: border-box;
}

.nl-segment__textarea:focus[b-5ahr4ya10l] {
    outline: none;
    border-color: #7c5295;
    box-shadow: 0 0 0 3px rgba(124, 82, 149, 0.1);
}

.nl-segment__textarea:disabled[b-5ahr4ya10l] {
    background: #f8fafc;
    color: #94a3b8;
}

.nl-segment__footer[b-5ahr4ya10l] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.nl-segment__hint[b-5ahr4ya10l] {
    font-size: 11px;
    color: #94a3b8;
}

.nl-segment__error[b-5ahr4ya10l] {
    font-size: 12px;
    color: #ef4444;
    flex: 1;
}
/* /Components/Marketing/OperatorDropdown.razor.rz.scp.css */
/* ── Operator select ────────────────────────────────────────────────── */
.operator-dropdown[b-a2367n3ia0] {
    border: 1px solid #e2e8f0;
    border-radius: 6px;
    padding: 5px 28px 5px 10px;
    font-size: 13px;
    color: #374151;
    background-color: #fff;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 8px center;
    appearance: none;
    -webkit-appearance: none;
    outline: none;
    cursor: pointer;
    flex-shrink: 0;
    transition: border-color 0.15s, box-shadow 0.15s;
}

.operator-dropdown:hover[b-a2367n3ia0] {
    border-color: #cbd5e1;
}

.operator-dropdown:focus[b-a2367n3ia0] {
    border-color: #7c5295;
    box-shadow: 0 0 0 2px rgba(124, 82, 149, 0.12);
}
/* /Components/Marketing/SegmentCanvas.razor.rz.scp.css */
/* ── Canvas — transparent, each group is its own card ──────────────── */
.sc-canvas[b-2vu4uocnrc] {
    display: flex;
    flex-direction: column;
}

/* ── Group card ────────────────────────────────────────────────────── */
.sc-group[b-2vu4uocnrc] {
    background: #fff;
    border: 1px solid #e2e8f0;
    border-radius: 10px;
    padding: 16px 20px 4px;
    transition: border-color 0.15s, box-shadow 0.15s;
}

.sc-group--drag-over[b-2vu4uocnrc] {
    border-color: #7c5295;
    box-shadow: 0 0 0 3px rgba(124, 82, 149, 0.12);
}

.sc-group__conditions[b-2vu4uocnrc] {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

/* ── Intra-group AND / OR connector ────────────────────────────────── */
.sc-intra-connector[b-2vu4uocnrc] {
    display: flex;
    align-items: center;
    gap: 4px;
    padding: 0 0 0 40px;
}

.sc-intra-btn[b-2vu4uocnrc] {
    background: #f1f5f9;
    border: 1px solid #e2e8f0;
    border-radius: 4px;
    padding: 2px 9px;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: #94a3b8;
    cursor: pointer;
    transition: border-color 0.12s, color 0.12s, background 0.12s;
}

.sc-intra-btn:hover[b-2vu4uocnrc] {
    border-color: #7c5295;
    color: #7c5295;
}

.sc-intra-btn--active[b-2vu4uocnrc] {
    background: #ede9f3;
    border-color: #7c5295;
    color: #7c5295;
}

/* ── "Add another group" bar (below all group cards) ───────────────── */
.sc-add-group-bar[b-2vu4uocnrc] {
    display: flex;
    justify-content: center;
    padding-top: 8px;
}
/* /Components/Marketing/SegmentEvaluationResults.razor.rz.scp.css */
/* ── Header ─────────────────────────────────────────────────────────── */
.er-header[b-iyskd8o3fa] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 16px;
}

.er-title[b-iyskd8o3fa] {
    font-size: 14px;
    font-weight: 600;
    color: #0f172a;
    margin: 0;
}

.er-close[b-iyskd8o3fa] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    background: transparent;
    border: none;
    border-radius: 6px;
    color: #94a3b8;
    font-size: 15px;
    cursor: pointer;
    transition: background 0.1s, color 0.1s;
}

.er-close:hover[b-iyskd8o3fa] {
    background: #f1f5f9;
    color: #374151;
}

/* ── Summary row ────────────────────────────────────────────────────── */
.er-summary[b-iyskd8o3fa] {
    display: flex;
    align-items: baseline;
    gap: 8px;
    margin-bottom: 20px;
    flex-wrap: wrap;
}

.er-count[b-iyskd8o3fa] {
    font-size: 32px;
    font-weight: 700;
    color: #7c5295;
    line-height: 1;
}

.er-label[b-iyskd8o3fa] {
    font-size: 14px;
    color: #374151;
    font-weight: 500;
}

.er-timestamp[b-iyskd8o3fa] {
    font-size: 12px;
    color: #94a3b8;
    margin-left: auto;
}

/* ── Preview list ───────────────────────────────────────────────────── */
.er-preview-heading[b-iyskd8o3fa] {
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: #94a3b8;
    margin-bottom: 8px;
}

.er-contact-list[b-iyskd8o3fa] {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.er-contact[b-iyskd8o3fa] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 8px 12px;
    background: #f8fafc;
    border-radius: 6px;
    gap: 12px;
}

.er-contact__name[b-iyskd8o3fa] {
    font-size: 13px;
    font-weight: 500;
    color: #374151;
    white-space: nowrap;
}

.er-contact__email[b-iyskd8o3fa] {
    font-size: 12px;
    color: #94a3b8;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.er-more[b-iyskd8o3fa] {
    font-size: 12px;
    color: #94a3b8;
    padding: 8px 12px;
    text-align: center;
    font-style: italic;
}

/* ── Empty state ────────────────────────────────────────────────────── */
.er-empty[b-iyskd8o3fa] {
    text-align: center;
    padding: 20px;
    color: #94a3b8;
    font-size: 13px;
    font-style: italic;
}
/* /Components/Marketing/SegmentNameInput.razor.rz.scp.css */
/* ── Wrapper ────────────────────────────────────────────────────────── */
.segment-name-input[b-f1z5uuyvm0] {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
}

/* ── Display mode ───────────────────────────────────────────────────── */
.segment-name-display[b-f1z5uuyvm0] {
    font-size: 18px;
    font-weight: 600;
    color: #0f172a;
    margin: 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 480px;
    cursor: default;
    line-height: 1.2;
}

.segment-name-edit-btn[b-f1z5uuyvm0] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    background: transparent;
    border: none;
    border-radius: 6px;
    color: #94a3b8;
    cursor: pointer;
    font-size: 15px;
    flex-shrink: 0;
    transition: background 0.1s, color 0.1s;
}

.segment-name-edit-btn:hover[b-f1z5uuyvm0] {
    background: #f1f5f9;
    color: #374151;
}

/* ── Edit mode ──────────────────────────────────────────────────────── */
.segment-name-field[b-f1z5uuyvm0] {
    font-size: 18px;
    font-weight: 600;
    color: #0f172a;
    border: 1.5px solid #7c5295;
    border-radius: 6px;
    padding: 4px 10px;
    outline: none;
    background: #fff;
    min-width: 200px;
    max-width: 480px;
    box-shadow: 0 0 0 3px rgba(124, 82, 149, 0.1);
    line-height: 1.2;
}
/* /Components/Panels/ActivityBookingPanel.razor.rz.scp.css */
.activity-booking-panel__contact[b-e1u7wbuhui] {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 16px 0 8px;
}

.activity-booking-panel__status[b-e1u7wbuhui] {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 8px 0 12px;
}

.activity-booking-panel__held-until[b-e1u7wbuhui] {
	font-size: 11pt;
	color: #888;
}

.activity-booking-panel__attendance-row[b-e1u7wbuhui] {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 8px 12px;
	border: 1px solid #EEE;
	border-radius: 6px;
	margin-bottom: 8px;
}

.activity-booking-panel__section-title[b-e1u7wbuhui] {
	font-size: 10pt;
	font-weight: 600;
	text-transform: uppercase;
	color: #888;
	letter-spacing: 0.05em;
	margin: 16px 0 8px;
}

.activity-booking-panel__section-title-row[b-e1u7wbuhui] {
	display: flex;
	align-items: center;
	justify-content: space-between;

	.activity-booking-panel__section-title {
		margin: 16px 0 8px;
	}
}

.activity-booking-panel__resource-card[b-e1u7wbuhui] {
	background: #F8F8F8;
	border-radius: 6px;
	padding: 12px;
	margin-bottom: 8px;
	border-left: 3px solid #CCC;
}

.activity-booking-panel__resource-header[b-e1u7wbuhui] {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	margin-bottom: 6px;

	span {
		font-size: 10pt;
		color: #666;
	}
}

.activity-booking-panel__runsheet[b-e1u7wbuhui] {
	display: flex;
	gap: 8px;
	align-items: flex-start;
	margin-top: 8px;
	padding: 8px;
	border-radius: 4px;
	font-size: 10pt;

	p {
		margin: 4px 0 0;
		color: #555;
	}

	&--setup[b-e1u7wbuhui] {
		background: #EFF8FF;
		border-left: 3px solid #6AB0DE;
	}

	&--packdown[b-e1u7wbuhui] {
		background: #FFF8EE;
		border-left: 3px solid #E8A84C;
	}
}

.activity-booking-panel__runsheet-label[b-e1u7wbuhui] {
	font-weight: 600;
	display: block;
}

.activity-booking-panel__runsheet-time[b-e1u7wbuhui] {
	color: #888;
	font-size: 9pt;
}

.activity-booking-panel__addons[b-e1u7wbuhui] {
	border: 1px solid #EEE;
	border-radius: 6px;
	overflow: hidden;
}

.activity-booking-panel__addon-row[b-e1u7wbuhui] {
	display: grid;
	grid-template-columns: 1fr 2fr auto;
	align-items: center;
	padding: 8px 12px;
	gap: 8px;
	border-bottom: 1px solid #F2F2F2;
	font-size: 10pt;

	&:last-child {
		border-bottom: none;
	}
}

.activity-booking-panel__addon-group[b-e1u7wbuhui] {
	color: #888;
	font-size: 9pt;
}

.activity-booking-panel__addon-qty[b-e1u7wbuhui] {
	color: #666;
	font-weight: 600;
}
/* /Components/Panels/AddCompanyPanel.razor.rz.scp.css */
[b-r3guyk6iyq] .fluent-input-label{
	color: var(--color-background);
	font-weight: 600;
	margin: 0;
	padding: 0;
}
/* /Components/Panels/AddContactPanel.razor.rz.scp.css */

/* Big Button Panel */
div.panel-select[b-ydnzvvnatd]{
	display: flex;
	background: #EEE;
	border-radius: 10px;
	padding: 5px;
	gap: 2px;
	--veleo-icon-size: 25px;
	margin-bottom: 10px;
	
	div.panel-select-item{
		display: flex;
		flex-direction: column;
		align-items: center;
		padding: 10px;
		font-size: 10pt;
		gap: 5px;
		width: 75px;
		cursor: pointer;
		border-radius: 5px;
		transition: background-color 0.2s;
		
		&:hover{
			background: #DDD;
		}

		&.active[b-ydnzvvnatd]{
			background-color: var(--color-module-contacts);
			color: #FFF;
			font-weight: bold;
		}
	}
}

/* Dependant Child Container */
.dependant-container[b-ydnzvvnatd]{
	margin-bottom: 10px; 
	background-color: #F5F5F5; 
	padding: 20px;
	position: relative;
	border-radius: 10px;
	
	.btn-delete-dependant{
		position: absolute;
		top: -16px;
		right: -16px;
		background-color: var(--color-form-error);
		width: 32px;
		height: 32px;
		border-radius: 50%;
		border: 1px solid #EAEAEA;
	}
}

[b-ydnzvvnatd] .fluent-input-label{
	color: var(--color-background);
	font-weight: 600;
	margin: 0;
	padding: 0;
}

[b-ydnzvvnatd] div.field{
	@media (min-width: 1000px) {
		display: grid;
		grid-template-columns: 100px auto;
		gap: 10px;[b-ydnzvvnatd]
	}
}

.item[b-ydnzvvnatd]{
	display: inline-block;
	padding: 5px 15px;
	border-radius: 15px;
}

.highlight[b-ydnzvvnatd]{
	background-color: yellow;
}

.header-left[b-ydnzvvnatd]{
	padding-left: 15px;
}
/* /Components/Panels/AddNotePanel.razor.rz.scp.css */
[b-4rspnyns7n] .fluent-input-label{
	color: var(--color-background);
	font-weight: 600;
	margin: 0;
	padding: 0;
}

/* Big Button Panel */
div.panel-select[b-4rspnyns7n]{
	display: flex;
	background: #EEE;
	border-radius: 10px;
	padding: 5px;
	gap: 2px;
	--veleo-icon-size: 25px;
	margin-bottom: 10px;

	div.panel-select-item{
		display: flex;
		flex-direction: column;
		align-items: center;
		padding: 10px;
		font-size: 10pt;
		gap: 5px;
		width: 50%;
		cursor: pointer;
		border-radius: 5px;
		transition: background-color 0.2s;

		&:hover{
			background: #DDD;
		}

		&.foh[b-4rspnyns7n]{
			background-color: #abbb72;
			color: #FFF;
			font-weight: bold;
		}
		&.boh[b-4rspnyns7n]{
			background-color: #8272bb;
			color: #FFF;
			font-weight: bold;
		}
	}
}
/* /Components/Panels/AddOpportunityPanel.razor.rz.scp.css */
[b-y4agnaayve] .fluent-input-label {
    font-weight: 600;
}
/* /Components/Panels/AddProductPanel.razor.rz.scp.css */
/* Always the single column layout the shared panel styles only use below 1000px */
.FluentPanelMain div.field-container[b-nc0jbe165m]{
	grid-template-columns: 1fr;
}

[b-nc0jbe165m] .fluent-input-label{
	color: var(--color-background);
	font-weight: 600;
	margin: 0;
	padding: 0;
}
/* /Components/Panels/AssignMedicalConditionsPanel.razor.rz.scp.css */
.toggle-container[b-5d3533dsro]{

	--toggle-color: #F5F5F5;

	.toggle{
		background-color: #F5F5F5;
		padding: 12px 0 12px 58px;
		border-right: 10px solid var(--toggle-color);
		margin-top: 2px;
		margin-bottom: 2px;
		position: relative;
		cursor: pointer;
		color: #272E40;
		opacity: 0.7;

		&::before{
			content: '';
			display: block;
			width: 16px;
			height: 16px;
			border-radius: 50%;
			background-color: #D9D9D9;
			border: 2px solid #D9D9D9;
			position: absolute;
			top: calc(50% - 9px);
			left: 20px;
		}

		&:hover[b-5d3533dsro]{
			background-color: #E9E9E9;
		}
	}

	.active[b-5d3533dsro]{
		background-color: #E6E6E6;
		color: #272E40;
		opacity: 1;

		&::before{
			background-color: #272E40;
			border-color: #BFBFBF;
		}
	}
}
/* /Components/Panels/AssignTagsPanel.razor.rz.scp.css */
.toggle-container[b-7saxy48pnw]{
	
	--toggle-color: #F5F5F5;
	
	.toggle{
		background-color: #F5F5F5;
		padding: 15px 0 15px 58px;
		border-right: 10px solid var(--toggle-color);
		margin-top: 2px;
		margin-bottom: 2px;
		position: relative;
		cursor: pointer;
		color: #272E40;
		opacity: 0.7;
		
		&::before{
			content: '';
			display: block;
			width: 16px;
			height: 16px;
			border-radius: 50%;
			background-color: #D9D9D9;
			border: 2px solid #D9D9D9;
			position: absolute;
			top: calc(50% - 9px);
			left: 20px;
		}
		
		&:hover[b-7saxy48pnw]{
			background-color: #E9E9E9;
		}
	}

	.active[b-7saxy48pnw]{
		background-color: #E6E6E6;
		color: #272E40;
		opacity: 1;
		
		&::before{
			background-color: #272E40;
			border-color: #BFBFBF;
		}
	}
}
/* /Components/Panels/AvailableActivitiesPanel.razor.rz.scp.css */
.activity-list-item[b-9nc35jb729] {
	cursor: pointer;
	padding: 1rem;
	background-color: white;
	color: #1a1a1a;
	border: 1px solid #efefef;
	border-radius: 8px;
	
	.activity-list-item-name {
		font-weight: bold;
	}
	
	&:hover[b-9nc35jb729] {
		background-color: #f2f2f2;
	}
}

.time-list[b-9nc35jb729] {
	display: flex;
	align-items: center;
	gap: 0.5rem;
}

.time-list[b-9nc35jb729] {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 0.5rem;
}

.time-button[b-9nc35jb729] {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	padding: 0.5rem;
	border-radius: 3px;
	--background-color: #efefef;
	background-color: var(--background-color);
	color: #777;
	font-weight: 600;
	cursor: pointer;
	user-select: none;
	transition: background-color ease-in-out 0.1s;
	
	.time-button-price {
		font-size: 10pt;
		font-weight: normal;
	}
	
	span[b-9nc35jb729] {
		white-space: nowrap;
	}
}

.time-button:not(.time-button_disabled):hover[b-9nc35jb729] {
	background-color: color-mix(in hsl, var(--background-color), #fff 25%);
}

.time-button.time-button_selected[b-9nc35jb729] {
	--background-color: var(--color-module-settings);
	color: #fff;
}

.time-button.time-button_disabled[b-9nc35jb729] {
	opacity: 0.3;
	cursor: not-allowed;
}

.space-between[b-9nc35jb729] { 
	display: flex; 
	align-items: center;
	justify-content: space-between; 
}

.icon-text[b-9nc35jb729] {
	display: flex; 
	align-items: center; 
	gap: 0.5rem;
	font-size: 12pt;
	margin: 0.25rem 0;
}

.add-ons-list[b-9nc35jb729] { 
	background-color: #efefef;
	display: flex;
	flex-direction: column;
	padding: 0.5rem 1rem;
	border-radius: 8px;
}

.pricing-info[b-9nc35jb729] {
	font-size: 8pt;
	color: #555;
	text-align: right;
}

.booking-panel-section-step h5[b-9nc35jb729] {
	margin: 0;
	color: inherit;
	font-weight: var(--font-weight-semibold);
}
/* /Components/Panels/CancelSubscriptionPanel.razor.rz.scp.css */
/*
 * The tinted blocks in the cancel panel. Each colour carries meaning rather than decoration: amber for
 * a constraint the operator has to work within, green for one that has been lifted, blue for the
 * policy's own instructions.
 */

.subscription-action-panel__instructions[b-2dnpfvbzxy] {
	background: #F1F6F9;
	border-left: 3px solid #044466;
	border-radius: 6px;
	padding: 12px 14px;
}

.subscription-action-panel__cooling-off[b-2dnpfvbzxy] {
	background: #ECFDF5;
	border-left: 3px solid #10B981;
	border-radius: 6px;
	padding: 12px 14px;
}

.subscription-action-panel__notice[b-2dnpfvbzxy] {
	background: #FFFBEB;
	border-left: 3px solid #F59E0B;
	border-radius: 6px;
	padding: 12px 14px;
}

.subscription-action-panel__fee[b-2dnpfvbzxy] {
	background: #FFF7ED;
	border-left: 3px solid #F97316;
	border-radius: 6px;
	padding: 12px 14px;
}

.subscription-action-panel__instructions p[b-2dnpfvbzxy],
.subscription-action-panel__cooling-off p[b-2dnpfvbzxy],
.subscription-action-panel__notice p[b-2dnpfvbzxy],
.subscription-action-panel__fee p[b-2dnpfvbzxy] {
	margin: 6px 0 0;
	font-size: 13px;
	line-height: 1.5;
}
/* /Components/Panels/ClassBookingPanel.razor.rz.scp.css */


/* /Components/Panels/CommunicationHistoryPanel.razor.rz.scp.css */
.email-viewer[b-18k8v0kbv2] {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.email-viewer__meta[b-18k8v0kbv2] {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    padding-bottom: 12px;
    border-bottom: 1px solid var(--neutral-stroke-rest);
}

.email-viewer__meta-date[b-18k8v0kbv2] {
    font-size: 0.875rem;
    color: var(--neutral-foreground-hint-rest);
    margin-right: 4px;
}


.email-viewer__meta-recipient[b-18k8v0kbv2] {
    font-size: 0.875rem;
    color: var(--neutral-foreground-hint-rest);
    margin: -8px 0 0;
}

.email-viewer__redirected[b-18k8v0kbv2] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.email-viewer__body-container[b-18k8v0kbv2] {
    flex: 1;
}

.email-viewer__iframe[b-18k8v0kbv2] {
    width: 100%;
    height: 600px;
    border: none;
    border-radius: 4px;
    background-color: #fff;
}

.email-viewer__plaintext[b-18k8v0kbv2] {
    white-space: pre-wrap;
    word-break: break-word;
    padding: 16px;
    border-radius: 4px;
    background-color: var(--neutral-fill-subtle-rest);
}

.email-viewer__empty[b-18k8v0kbv2] {
    color: var(--neutral-foreground-hint-rest);
    font-style: italic;
    text-align: center;
    padding: 40px 0;
}

.sms-thread[b-18k8v0kbv2] {
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 12px 6px 24px;
}

.sms-bubble-row[b-18k8v0kbv2] {
    display: flex;
    width: 100%;
}

.sms-bubble-row--outbound[b-18k8v0kbv2] {
    justify-content: flex-end;
}

.sms-bubble-row--inbound[b-18k8v0kbv2] {
    justify-content: flex-start;
}

.sms-bubble[b-18k8v0kbv2] {
    position: relative;
    max-width: 75%;
    padding: 10px 16px;
    border-radius: 18px;
    font-size: 0.9375rem;
    line-height: 1.4;
    white-space: pre-wrap;
    word-break: break-word;
}

.sms-bubble--outbound[b-18k8v0kbv2] {
    background-color: #34c759;
    color: #fff;
    border-bottom-right-radius: 4px;
}

.sms-bubble--inbound[b-18k8v0kbv2] {
    background-color: #e9e9eb;
    color: #000;
    border-bottom-left-radius: 4px;
}

.sms-bubble--outbound[b-18k8v0kbv2]::after {
    content: "";
    position: absolute;
    bottom: 0;
    right: -6px;
    width: 12px;
    height: 12px;
    background-color: #34c759;
    clip-path: polygon(0 0, 100% 100%, 0 100%);
}

.sms-bubble--inbound[b-18k8v0kbv2]::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: -6px;
    width: 12px;
    height: 12px;
    background-color: #e9e9eb;
    clip-path: polygon(100% 0, 100% 100%, 0 100%);
}
/* /Components/Panels/CompanyContactDetailPanel.razor.rz.scp.css */
/*
 * Company contact detail panel.
 *
 * Layout only. Colour, radius and type come from the record tokens on :root and the shared
 * .veleo-panel-section in Styles/Modules/_panelShared.scss, the same way the customer record
 * screens work - nothing here declares a palette of its own.
 */

/* -- 1) Identity ------------------------------------------------------------------------------ */

.ccd-identity[b-yy6zf9r25v] {
	display: flex;
	align-items: flex-start;
	gap: 14px;
}

.ccd-identity__text[b-yy6zf9r25v] {
	display: flex;
	flex-direction: column;
	gap: 6px;
	min-width: 0;
}

.ccd-identity__name[b-yy6zf9r25v] {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 8px;
}

.ccd-identity__name-text[b-yy6zf9r25v] {
	font-weight: var(--font-weight-bold, 700);
	font-size: var(--font-size-medium, 15px);
	color: var(--rc-ink);
}

.ccd-identity__contact[b-yy6zf9r25v] {
	display: flex;
	flex-direction: column;
	gap: 3px;
}

/* The Icon component colours itself from --veleo-icon-color rather than inheriting, so the custom
   property is set here and inherited down into it - a plain `color` would leave the glyph on the
   global default while the text beside it took the muted tone. */
.ccd-identity__contact span[b-yy6zf9r25v] {
	display: flex;
	align-items: center;
	gap: 6px;
	font-size: var(--font-size-small, 12px);
	color: var(--rc-text-secondary);
	--veleo-icon-color: var(--rc-text-tertiary);
	word-break: break-word;
}

/* -- 2) The approval facts -------------------------------------------------------------------- */

.ccd-facts[b-yy6zf9r25v] {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
	gap: 14px;
	margin-top: 14px;
}

.ccd-fact[b-yy6zf9r25v] {
	display: flex;
	flex-direction: column;
	gap: 2px;
	min-width: 0;
}

.ccd-fact__label[b-yy6zf9r25v] {
	font-size: var(--font-size-tiny, 10px);
	font-weight: var(--font-weight-bold, 700);
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: var(--rc-text-label);
}

.ccd-fact__value[b-yy6zf9r25v] {
	font-size: var(--font-size-small, 13px);
	color: var(--rc-ink);
	word-break: break-word;
}

.ccd-fact__detail[b-yy6zf9r25v] {
	font-size: var(--font-size-tiny, 11px);
	color: var(--rc-text-tertiary);
	word-break: break-word;
}

/* A request that was raised and never delivered is the one fact on this grid somebody has to act
   on, so it is the one fact that is allowed to shout. */
.ccd-fact--alert .ccd-fact__value[b-yy6zf9r25v],
.ccd-fact--alert .ccd-fact__detail[b-yy6zf9r25v] {
	color: var(--rc-danger-fg);
}

.ccd-quote[b-yy6zf9r25v] {
	margin-top: 14px;
	padding: 10px 12px;
	border-left: 3px solid var(--rc-border-section);
	background: var(--rc-surface-footer);
	border-radius: 0 6px 6px 0;
}

.ccd-quote__label[b-yy6zf9r25v] {
	display: block;
	font-size: var(--font-size-tiny, 10px);
	font-weight: var(--font-weight-bold, 700);
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: var(--rc-text-label);
}

.ccd-quote p[b-yy6zf9r25v] {
	margin: 4px 0 0;
	color: var(--rc-text-secondary) !important;
}

.ccd-inline-actions[b-yy6zf9r25v] {
	display: flex;
	justify-content: flex-start;
	margin-top: 12px;
}

/* -- The manual decision ---------------------------------------------------------------------- */

.ccd-decision[b-yy6zf9r25v] {
	border-color: var(--rc-warning-dot);
}

/* -- 3) History -------------------------------------------------------------------------------- */

.ccd-timeline[b-yy6zf9r25v] {
	display: flex;
	flex-direction: column;
	margin-top: 12px;
}

.ccd-timeline__entry[b-yy6zf9r25v] {
	display: grid;
	grid-template-columns: 26px 1fr;
	gap: 10px;
	padding-bottom: 16px;
	position: relative;
}

/* The rail joins the markers rather than being drawn behind them, so the last entry stops the line
   instead of trailing it off the bottom of the list. */
.ccd-timeline__entry:not(:last-child)[b-yy6zf9r25v]::before {
	content: "";
	position: absolute;
	left: 12px;
	top: 26px;
	bottom: 0;
	width: 1px;
	background: var(--rc-border-section);
}

/* The rc-tone-* class on the marker supplies its background and foreground; the icon inside needs
   telling to use that foreground rather than the global icon colour. */
.ccd-timeline__marker[b-yy6zf9r25v] {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 26px;
	height: 26px;
	border-radius: 50%;
	flex: none;
	--veleo-icon-color: currentColor;
}

.ccd-timeline__body[b-yy6zf9r25v] {
	display: flex;
	flex-direction: column;
	gap: 2px;
	min-width: 0;
	padding-top: 4px;
}

.ccd-timeline__title[b-yy6zf9r25v] {
	font-size: var(--font-size-small, 13px);
	font-weight: var(--font-weight-bold, 700);
	color: var(--rc-ink);
	word-break: break-word;
}

.ccd-timeline__detail[b-yy6zf9r25v] {
	font-size: var(--font-size-tiny, 11px);
	color: var(--rc-text-secondary);
	word-break: break-word;
}

.ccd-timeline__quote[b-yy6zf9r25v] {
	font-size: var(--font-size-tiny, 11px);
	font-style: italic;
	color: var(--rc-text-tertiary);
	word-break: break-word;
}

.ccd-timeline__when[b-yy6zf9r25v] {
	font-size: var(--font-size-tiny, 10px);
	color: var(--rc-text-faint);
}
/* /Components/Panels/ConnectPaymentProviderPanel.razor.rz.scp.css */
/* Show/hide toggle sits inside the Master Key field's end slot */
.master-key-toggle[b-bkx38lxuyj] {
	display: flex;
	align-items: center;
	padding: 0 4px;
	border: none;
	background: transparent;
	color: var(--color-neutral-600);
	cursor: pointer;
}

.master-key-toggle:hover:not(:disabled)[b-bkx38lxuyj] {
	color: var(--color-neutral-900);
}

.master-key-toggle:disabled[b-bkx38lxuyj] {
	cursor: default;
	opacity: 0.5;
}
/* /Components/Panels/ContactFormInvitationPanel.razor.rz.scp.css */
.form-definition[b-apftmy77ti]
{
	display: flex;
	align-items: center;
	text-decoration: none;
	margin: 5px 0;
	background-color: white;
	color: #1a1a1a;
	border: 1px solid #efefef;
	cursor: pointer;
	padding: 5px;
	border-radius: 5px;
	
	&:hover{
		background-color: #eee;
	}
	
	&.selected[b-apftmy77ti] {
		background-color: #eee;
	}
}
/* /Components/Panels/ContactFormResponsePanel.razor.rz.scp.css */
/* The form title, section headers and answer rows all come from FormDefinitionRenderer. */
/* /Components/Panels/ContactIdentifiersPanel.razor.rz.scp.css */
.identifier-list[b-n1c8qxeejn] {
	display: flex; 
	flex-direction: column; 
	gap: 10px;
}

.identifier-list-item[b-n1c8qxeejn] {
	padding: 1rem;
	background-color: white;
	color: #1a1a1a;
	border: 1px solid #efefef;
	border-radius: 8px;
	display: grid;
	grid-template-columns: min-content 1fr max-content;
	gap: 5px 10px;
	align-items: center;
}
/* /Components/Panels/CourseEnrolmentPanel.razor.rz.scp.css */
.enrolment[b-w1cj42j5nk] {	
	display: flex;
	flex-direction: column;
	gap: 16px;
	overflow-x: hidden;
}

.enrolment__steps-container[b-w1cj42j5nk] {
	position: relative;
	width: 100%;
	min-height: 12.5rem;
	display: flex;
	flex-direction: column;
	align-self: stretch;
	overflow: hidden;
}

.enrolment__step[b-w1cj42j5nk] {
	width: 100%;
	will-change: transform, opacity;
	position: relative;
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.enrolment__step--slide-in-right[b-w1cj42j5nk] {
	animation: enrolmentSlideInFromRight-b-w1cj42j5nk 0.4s cubic-bezier(0.4, 0, 0.2, 1) both;
}

.enrolment__step--slide-in-left[b-w1cj42j5nk] {
	animation: enrolmentSlideInFromLeft-b-w1cj42j5nk 0.4s cubic-bezier(0.4, 0, 0.2, 1) both;
}

@keyframes enrolmentSlideInFromRight-b-w1cj42j5nk {
	from {
		transform: translateX(100%);
		opacity: 0;
	}
	to {
		transform: translateX(0);
		opacity: 1;
	}
}

@keyframes enrolmentSlideInFromLeft-b-w1cj42j5nk {
	from {
		transform: translateX(-100%);
		opacity: 0;
	}
	to {
		transform: translateX(0);
		opacity: 1;
	}
}

.enrolment__intro[b-w1cj42j5nk] {
	margin: 0;
	color: #5a6180;
	font-size: var(--font-size-medium);
	font-style: normal;
	font-weight: var(--font-weight-medium);
	line-height: 20px;
}

.enrolment__list[b-w1cj42j5nk] {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.enrolment__list--plans[b-w1cj42j5nk] {
	display: flex;
	flex-direction: column;
	gap: 16px;
	align-items: stretch;
}

.enrolment__list--plans .course-detail-card--plan[b-w1cj42j5nk] {
	width: 100%;
	max-width: 283px;
	height: 100%;
	align-self: center;
}

.enrolment__card-disabled[b-w1cj42j5nk] {
	opacity: 0.55;
	pointer-events: none;
}

.enrolment__status[b-w1cj42j5nk] {
	display: flex;
	justify-content: center;
	padding: 32px;
}

.enrolment__heading[b-w1cj42j5nk] {
	margin: 0;
	font-size: var(--font-size-small);
	font-weight: var(--font-weight-medium);
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: #888;
}

.enrolment__group[b-w1cj42j5nk] {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.enrolment__group-name[b-w1cj42j5nk] {
	font-weight: var(--font-weight-medium);
	font-size: 15px;
}

/* Lessons step — ported from consumer CourseLessonsStep */
.course-details-modal__section[b-w1cj42j5nk] {
	display: flex;
	flex-direction: column;
	gap: 12px;
	align-self: stretch;
	align-items: flex-start;
	width: 100%;
}

.course-details-modal__section-list[b-w1cj42j5nk] {
	display: flex;
	flex-direction: column;
	gap: 12px;
	align-self: stretch;
	width: 100%;
}

.course-lessons-step[b-w1cj42j5nk] {
	display: flex;
	flex-direction: column;
	gap: 16px;
	align-self: stretch;
	width: 100%;
}

.course-lessons-step__day-row[b-w1cj42j5nk] {
	display: flex;
	padding-bottom: 8px;
	align-items: flex-start;
	gap: 4px;
	align-self: stretch;
}

.course-lessons-step__day-btn[b-w1cj42j5nk] {
	display: flex;
	flex-direction: column;
	padding: 8px 4px;
	justify-content: center;
	align-items: center;
	flex: 1 0 0;
	border-radius: 8px;
	border: 1px solid #e0e4ef;
	background: #fff;
	height: 40px;
	color: #1a1f36;
	font-size: var(--font-size-normal);
	font-style: normal;
	font-weight: var(--font-weight-light);
	line-height: 20px;
	cursor: pointer;
	transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.course-lessons-step__day-btn:hover:not(.course-lessons-step__day-btn--selected):not(:disabled)[b-w1cj42j5nk] {
	border-color: var(--course-accent-color, #437390);
	background: rgba(67, 115, 144, 0.08);
	color: var(--course-accent-color, #437390);
}

.course-lessons-step__day-btn--selected[b-w1cj42j5nk] {
	background: var(--course-accent-color, #437390);
	color: #fff;
	font-weight: var(--font-weight-semibold);
}

.course-lessons-step__day-btn--has-selection[b-w1cj42j5nk] {
	border: 1px solid var(--course-accent-color, #437390);
}

.course-lessons-step__day-btn-dot[b-w1cj42j5nk] {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 4px;
	height: 4px;
	color: var(--course-accent-color, #437390);
	flex-shrink: 0;
}

.course-lessons-step__day-btn-dot svg[b-w1cj42j5nk] {
	width: 100%;
	height: 100%;
}

.course-lessons-step__day-btn--selected .course-lessons-step__day-btn-dot[b-w1cj42j5nk] {
	color: #fff;
}

.course-lessons-step__day-btn-long[b-w1cj42j5nk] {
	display: none;
}

.course-lessons-step__list-toolbar[b-w1cj42j5nk] {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 8px;
	align-self: stretch;
}

.course-lessons-step__selected-count[b-w1cj42j5nk] {
	display: flex;
	align-items: flex-start;
	justify-content: flex-end;
	color: #1a1f36;
	font-size: var(--font-size-normal);
	font-style: normal;
	font-weight: var(--font-weight-light);
	line-height: 20px;
}

.course-lessons-step__selected-count-num[b-w1cj42j5nk] {
	color: var(--course-accent-color, #437390);
	font-weight: var(--font-weight-semibold);
}

.course-lessons-step__empty[b-w1cj42j5nk] {
	display: flex;
	padding: 48px 24px;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width: 100%;
	align-self: stretch;
	border-radius: 8px;
	background: #f5f6fa;
}

.course-lessons-step__empty-content[b-w1cj42j5nk] {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 8px;
	align-self: stretch;
}

.course-lessons-step__empty-title[b-w1cj42j5nk] {
	color: #878fa9;
	text-align: center;
	font-size: var(--font-size-medium);
	font-weight: var(--font-weight-semibold);
	line-height: 24px;
}

.course-lessons-step__empty-description[b-w1cj42j5nk] {
	color: #878fa9;
	text-align: center;
	font-size: var(--font-size-normal);
	font-weight: var(--font-weight-light);
	line-height: 20px;
}

.course-lessons-step__list[b-w1cj42j5nk] {
	display: flex;
	flex-direction: column;
	gap: 12px;
	padding-bottom: 24px;
}

.course-lessons-step__slot[b-w1cj42j5nk] {
	display: flex;
	align-items: flex-start;
	border-radius: 16px 20px 20px 16px;
	border: 1px solid #e0e4ef;
	box-shadow: 1px -1px 8px 2px rgba(90, 97, 128, 0.08);
	background: #fff;
	cursor: pointer;
	transition: border-color 0.15s ease, background-color 0.15s ease;
	overflow: hidden;
}

.course-lessons-step__slot:has(.course-lessons-step__slot-check--selected)[b-w1cj42j5nk] {
	border-color: var(--course-accent-color, #437390);
}

.course-lessons-step__slot--limit-disabled[b-w1cj42j5nk] {
	cursor: not-allowed;
	pointer-events: none;
	border-color: #e0e4ef;
}

.course-lessons-step__slot--limit-disabled .course-lessons-step__slot-name[b-w1cj42j5nk],
.course-lessons-step__slot--limit-disabled .course-lessons-step__slot-time[b-w1cj42j5nk],
.course-lessons-step__slot--limit-disabled .course-lessons-step__slot-meta-text[b-w1cj42j5nk],
.course-lessons-step__slot--limit-disabled .course-lessons-step__slot-meta-text-num[b-w1cj42j5nk] {
	color: #878fa9;
}

.course-lessons-step__slot--limit-disabled .course-lessons-step__slot-check[b-w1cj42j5nk] {
	background: #e8eaf0;
}

.course-lessons-step__slot--limit-disabled .course-lessons-step__slot-check-unchecked svg circle[b-w1cj42j5nk] {
	stroke: #b8bfd4;
}

.course-lessons-step__slot--completed[b-w1cj42j5nk] {
	background: rgba(255, 255, 255, 0.72);
	box-shadow: none;
	cursor: not-allowed;
	opacity: 0.72;
	pointer-events: none;
}

.course-lessons-step__slot--completed:hover[b-w1cj42j5nk] {
	border-color: #e0e4ef;
}

.course-lessons-step__slot--completed .course-lessons-step__slot-avatar-column[b-w1cj42j5nk] {
	background: #e8eaf0;
}

.course-lessons-step__slot--completed .course-lessons-step__slot-info[b-w1cj42j5nk] {
	background: rgba(255, 255, 255, 0.5);
}

.course-lessons-step__slot--completed .course-lessons-step__slot-name[b-w1cj42j5nk],
.course-lessons-step__slot--completed .course-lessons-step__slot-time[b-w1cj42j5nk],
.course-lessons-step__slot--completed .course-lessons-step__slot-meta-text[b-w1cj42j5nk],
.course-lessons-step__slot--completed .course-lessons-step__slot-meta-text-num[b-w1cj42j5nk] {
	color: #5a6180;
}

.course-lessons-step__slot--completed .course-lessons-step__slot-check[b-w1cj42j5nk] {
	background: #e8eaf0;
}

.course-lessons-step__slot-avatar-column[b-w1cj42j5nk] {
	display: flex;
	width: 80px;
	padding: 8px 6px;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 8px;
	align-self: stretch;
	border-right: 1px solid #e0e4ef;
	flex-shrink: 0;
}

.course-lessons-step__slot-avatar-column[b-w1cj42j5nk]  .avatar-container {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	gap: 0;
}

.course-lessons-step__slot-avatar-column[b-w1cj42j5nk]  .avatar-container__image {
	grid-row: unset;
	grid-column: unset;
	width: 40px;
	height: 40px;
}

.course-lessons-step__slot-avatar-column[b-w1cj42j5nk]  .avatar-container__image img {
	width: 40px;
	height: 40px;
	object-fit: cover;
}

.course-lessons-step__slot-avatar-column--rotating[b-w1cj42j5nk] {
	gap: 0;
}

.course-lessons-step__slot-icon-placeholder[b-w1cj42j5nk] {
	width: 40px;
	height: 40px;
	flex-shrink: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	color: #878fa9;
	font-size: 28px;
}

.course-lessons-step__slot-name[b-w1cj42j5nk],
.course-lessons-step__slot-name-with-avatar[b-w1cj42j5nk] {
	color: #1a1f36;
	text-align: center;
	font-size: var(--font-size-small);
	font-style: normal;
	font-weight: var(--font-weight-light);
	line-height: 16px;
	align-self: stretch;
}

.course-lessons-step__slot-name-with-avatar[b-w1cj42j5nk] {
	overflow: hidden;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
}

.course-lessons-step__slot-info[b-w1cj42j5nk] {
	display: flex;
	padding: 6px 6px 6px 8px;
	flex-direction: column;
	align-items: flex-start;
	gap: 8px;
	flex: 1 0 0;
	min-width: 0;
	align-self: stretch;
	border-radius: 0 8px 8px 0;
	margin-right: -8px;
	background: #fff;
	z-index: 1;
}

.course-lessons-step__slot-time-row[b-w1cj42j5nk] {
	display: flex;
	align-items: baseline;
	gap: 6px;
	align-self: stretch;
}

.course-lessons-step__slot-time[b-w1cj42j5nk] {
	font-size: var(--font-size-normal);
	color: #1a1f36;
	overflow: hidden;
	text-overflow: ellipsis;
	font-style: normal;
	font-weight: var(--font-weight-semibold);
	line-height: 20px;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
	flex: 1 0 0;
}

.course-lessons-step__slot-meta-grid[b-w1cj42j5nk] {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 8px;
	align-self: stretch;
}

.course-lessons-step__slot-meta-item[b-w1cj42j5nk] {
	display: flex;
	align-items: center;
	gap: 8px;
	align-self: stretch;
}

.course-lessons-step__slot-meta-item i[b-w1cj42j5nk] {
	display: block;
	flex-shrink: 0;
	font-size: 16px;
	color: #878fa9;
}

.course-lessons-step__slot-meta-text[b-w1cj42j5nk] {
	color: #1a1f36;
	font-size: var(--font-size-small);
	font-style: normal;
	font-weight: var(--font-weight-light);
	line-height: 16px;
}

.course-lessons-step__slot-meta-text-num[b-w1cj42j5nk] {
	font-weight: var(--font-weight-semibold);
	color: var(--course-accent-color, #437390);
}

.course-lessons-step__slot-check[b-w1cj42j5nk] {
	background: var(--course-accent-color, #437390);
	width: 44px;
	padding-left: 8px;
	flex-shrink: 0;
	display: flex;
	align-items: center;
	align-self: stretch;
	justify-content: center;
}

.course-lessons-step__slot-check-visual[b-w1cj42j5nk] {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	flex-shrink: 0;
}

.course-lessons-step__slot-check-unchecked[b-w1cj42j5nk] {
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.course-lessons-step__slot-check-checked[b-w1cj42j5nk] {
	display: none;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	border-radius: 999px;
	background: #fff;
}

.course-lessons-step__slot-check-checked .iconoir-check[b-w1cj42j5nk] {
	font-size: var(--font-size-medium);
	color: var(--course-accent-color, #437390);
}

.course-lessons-step__slot-check--selected .course-lessons-step__slot-check-unchecked[b-w1cj42j5nk] {
	display: none;
}

.course-lessons-step__slot-check--selected .course-lessons-step__slot-check-checked[b-w1cj42j5nk] {
	display: inline-flex;
}

@media (min-width: 768px) {
	.course-lessons-step__day-row[b-w1cj42j5nk] {
		gap: 8px;
	}

	.course-lessons-step__day-btn-short[b-w1cj42j5nk] {
		display: none;
	}

	.course-lessons-step__day-btn-long[b-w1cj42j5nk] {
		display: inline;
	}

	.course-lessons-step__slot-meta-grid[b-w1cj42j5nk] {
		display: inline-grid;
		row-gap: 16px;
		column-gap: 16px;
		align-self: stretch;
		grid-template-rows: repeat(1, fit-content(100%));
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.course-lessons-step__slot-avatar-column[b-w1cj42j5nk] {
		padding: 6px;
		gap: 4px;
	}

	.course-lessons-step__slot-info[b-w1cj42j5nk] {
		padding: 8px;
	}

	.course-lessons-step__list[b-w1cj42j5nk] {
		padding-bottom: 0;
	}
}

/* Confirm step — ported from consumer CourseConfirmStep */
.course-confirm-step[b-w1cj42j5nk] {
	display: flex;
	flex-direction: column;
	gap: 16px;
	align-self: stretch;
	width: 100%;
}

.course-confirm-step__summary[b-w1cj42j5nk] {
	display: flex;
	flex-direction: column;
	gap: 8px;
	align-self: stretch;
	margin-bottom: -8px;
}

.course-confirm-step__course-name[b-w1cj42j5nk] {
	color: #5a6180;
	font-size: var(--font-size-medium);
	font-style: normal;
	font-weight: var(--font-weight-semibold);
	line-height: 20px;
	margin: 0;
}

.course-confirm-step__details-card[b-w1cj42j5nk] {
	display: flex;
	align-items: stretch;
	align-self: stretch;
	border-radius: 16px;
	border: 1px solid #e0e4ef;
	background: #fff;
	box-shadow: 1px -1px 8px 2px rgba(90, 97, 128, 0.08);
}

.course-confirm-step__slot-avatar-column[b-w1cj42j5nk] {
	display: flex;
	width: 100px;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 4px;
	padding: 8px;
	flex-shrink: 0;
}

.course-confirm-step__slot-avatar-column[b-w1cj42j5nk]  .avatar-container {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	gap: 0;
}

.course-confirm-step__slot-avatar-column[b-w1cj42j5nk]  .avatar-container__image {
	grid-row: unset;
	grid-column: unset;
}

.course-confirm-step__slot-avatar-column[b-w1cj42j5nk]  .avatar-container__image img {
	object-fit: cover;
}

.course-confirm-step__slot-name[b-w1cj42j5nk] {
	color: #1a1f36;
	text-align: center;
	font-size: var(--font-size-normal);
	font-style: normal;
	font-weight: var(--font-weight-medium);
	line-height: 20px;
	overflow: hidden;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
	align-self: stretch;
}

.course-confirm-step__detail-row-list[b-w1cj42j5nk] {
	display: flex;
	padding: 8px;
	flex-direction: column;
	align-items: flex-start;
	gap: 6px;
	flex: 1 0 0;
	min-width: 0;
}

.course-confirm-step__detail-row-list--with-avatar[b-w1cj42j5nk] {
	border-left: 1px solid #e0e4ef;
}

.course-confirm-step__detail-row[b-w1cj42j5nk] {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	align-self: stretch;
}

.course-confirm-step__detail-icon-wrap[b-w1cj42j5nk] {
	display: flex;
	width: 24px;
	justify-content: center;
	align-items: center;
	flex-shrink: 0;
}

.course-confirm-step__detail-text[b-w1cj42j5nk] {
	color: #1a1f36;
	font-size: var(--font-size-normal);
	font-style: normal;
	font-weight: var(--font-weight-medium);
	line-height: 20px;
}

.course-confirm-step__detail-text--price[b-w1cj42j5nk] {
	color: #878fa9;
	font-weight: var(--font-weight-light);
}

.course-confirm-step__details-card .course-confirm-step__detail-icon[b-w1cj42j5nk] {
	color: #878fa9;
	font-size: 20px;
}

.course-confirm-step__pricing[b-w1cj42j5nk] {
	display: flex;
	flex-direction: column;
	gap: 4px;
	align-self: stretch;
	align-items: flex-start;
	padding-top: 16px;
	border-top: 1px solid #EEEEEE;
}

.course-confirm-step__pricing-row[b-w1cj42j5nk] {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 12px;
	align-self: stretch;
}

.course-confirm-step__pricing-label[b-w1cj42j5nk] {
	color: #1a1f36;
	font-size: var(--font-size-small);
	font-style: normal;
	font-weight: var(--font-weight-light);
	line-height: 18px;
}

.course-confirm-step__pricing-label--bold[b-w1cj42j5nk] {
	font-weight: var(--font-weight-semibold);
}

.course-confirm-step__pricing-value[b-w1cj42j5nk] {
	color: #1a1f36;
	font-size: var(--font-size-normal);
	font-style: normal;
	font-weight: var(--font-weight-semibold);
	line-height: 20px;
}
/* /Components/Panels/CourseLessonPanel.razor.rz.scp.css */
/* /Components/Panels/CustomerAgreementViewPanel.razor.rz.scp.css */
.customer-agreement-view-panel__staff-instructions[b-unvokedyy0] {
	margin: 0 0 16px;
	color: #5a6180;
	font-size: var(--font-size-medium);
	font-weight: var(--font-weight-light);
	line-height: 20px;
}

.customer-agreement-view-panel__header[b-unvokedyy0] {
	padding-bottom: 16px;
	border-bottom: 1px solid #b1b6c8;
}

.customer-agreement-view-panel__title[b-unvokedyy0] {
	margin: 0;
	color: #343646;
	font-size: 28px;
	font-weight: var(--font-weight-semibold);
	line-height: 32px;
	text-align: center;
}

.customer-agreement-view-panel__content[b-unvokedyy0] {
	color: #343646;
	font-size: var(--font-size-medium);
	font-weight: var(--font-weight-light);
	line-height: 20px;
	padding: 16px 0;
}

.customer-agreement-view-panel__header + .customer-agreement-view-panel__content.policy-rich-text[b-unvokedyy0]  > h1:first-child {
	display: none;
}

.policy-rich-text[b-unvokedyy0]  :where(h1, h2, h3, h4, h5, h6) {
	font-weight: var(--font-weight-semibold);
	color: #343646;
	line-height: 24px;
}

.policy-rich-text[b-unvokedyy0]  h1 {
	font-size: 28px;
	line-height: 32px;
	margin: 0 0 16px;
}

.policy-rich-text[b-unvokedyy0]  h2 {
	font-size: var(--font-size-xlarge);
	margin: 20px 0 12px;
}

.policy-rich-text[b-unvokedyy0]  h3 {
	font-size: var(--font-size-large);
	margin: 16px 0 8px;
}

.policy-rich-text[b-unvokedyy0]  h4 {
	font-size: 20px;
	margin: 16px 0 8px;
}

.policy-rich-text[b-unvokedyy0]  h5 {
	font-size: var(--font-size-medium);
	margin: 12px 0 4px;
}

.policy-rich-text[b-unvokedyy0]  h6 {
	font-size: var(--font-size-normal);
	margin: 12px 0 4px;
}

.policy-rich-text[b-unvokedyy0]  :where(h1, h2, h3, h4, h5, h6):first-child {
	margin-top: 0;
}

.policy-rich-text[b-unvokedyy0]  p {
	margin: 0 0 16px;
}

.policy-rich-text[b-unvokedyy0]  p:last-child {
	margin-bottom: 0;
}

.policy-rich-text[b-unvokedyy0]  p:empty,
.policy-rich-text[b-unvokedyy0]  p:has(> br:only-child) {
	display: none;
	margin: 0;
}

.policy-rich-text[b-unvokedyy0]  strong {
	font-weight: var(--font-weight-medium);
}

.policy-rich-text[b-unvokedyy0]  :where(ul, ol) {
	margin: 0 0 12px;
	padding-left: 24px;
}

.policy-rich-text[b-unvokedyy0]  ul {
	list-style-type: disc;
}

.policy-rich-text[b-unvokedyy0]  ol {
	list-style-type: decimal;
}

.policy-rich-text[b-unvokedyy0]  li {
	margin-bottom: 6px;
}

.policy-rich-text[b-unvokedyy0]  li:last-child {
	margin-bottom: 0;
}

.policy-rich-text[b-unvokedyy0]  a {
	color: #68708f;
	text-decoration: underline;
}
/* /Components/Panels/DisconnectPaymentProviderPanel.razor.rz.scp.css */
/* Show/hide toggle sits inside the Master Key field's end slot */
.master-key-toggle[b-vogs5cchg7] {
	display: flex;
	align-items: center;
	padding: 0 4px;
	border: none;
	background: transparent;
	color: var(--color-neutral-600);
	cursor: pointer;
}

.master-key-toggle:hover:not(:disabled)[b-vogs5cchg7] {
	color: var(--color-neutral-900);
}

.master-key-toggle:disabled[b-vogs5cchg7] {
	cursor: default;
	opacity: 0.5;
}
/* /Components/Panels/EditCompanyPanel.razor.rz.scp.css */
[b-sq15lymdqa] .fluent-input-label{
	color: var(--color-background);
	font-weight: 600;
	margin: 0;
	padding: 0;
}

.social-container[b-sq15lymdqa]{
	display: grid;
	grid-template-columns: 24px auto;
	gap: 5px;
	margin-bottom: 7px;
	margin-top: 7px;
	align-items: center;
}
/* /Components/Panels/EditContactPanel.razor.rz.scp.css */
[b-5l0lybl24v] .fluent-input-label{
	color: var(--color-background);
	font-weight: 600;
	margin: 0;
	padding: 0;
}

[b-5l0lybl24v] div.field{
	@media (min-width: 1000px) {
		display: grid;
		grid-template-columns: 100px auto;
		gap: 10px;[b-5l0lybl24v]
	}
}
/* /Components/Panels/EditNotePanel.razor.rz.scp.css */
[b-acxqvq64zr] .fluent-input-label{
	color: var(--color-background);
	font-weight: 600;
	margin: 0;
	padding: 0;
}

.note-container[b-acxqvq64zr]{
	
	margin-bottom: 20px;
	
	.note{
		background-color: #fff;
		border: 1px solid #ccc;
		display: grid;
		grid-template-columns: 44px auto;
		align-items: center;
		overflow: clip;
		border-radius: 8px;

		.note-icon{
			color: #FFF;
			display: flex;
			align-items: center;
			justify-content: center;
			padding: 10px;
			height: 100%;

			&.foh {
				background-color: #abbb72;
			}

			&.boh[b-acxqvq64zr] {
				background-color: #8272bb;
			}
		}

		.note-copy[b-acxqvq64zr]{
			color: #555;
			padding: 10px;
		}
	}

	.note-footer[b-acxqvq64zr]{
		font-size: 9pt;
		color: #999;
		padding-left: 54px;
	}
}	
/* /Components/Panels/FilePickerPanel.razor.rz.scp.css */
.file-list[b-kx7oa929jy] {
    display: flex;
    flex-direction: column;
    gap: 4px;
    margin-top: 8px;
}

.file-item[b-kx7oa929jy] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 12px;
    border-radius: 6px;
    cursor: pointer;
    border: 1px solid var(--neutral-stroke-rest);
    transition: background 0.1s;
}

.file-item:hover[b-kx7oa929jy] {
    background: var(--neutral-fill-secondary-hover);
}

.file-item--selected[b-kx7oa929jy] {
    background: var(--accent-fill-rest);
    border-color: var(--accent-stroke-control-rest);
    color: var(--foreground-on-accent-rest);
}

.file-item__info[b-kx7oa929jy] {
    flex: 1;
    display: flex;
    flex-direction: column;
}

.file-item__name[b-kx7oa929jy] {
    font-weight: 500;
    font-size: 14px;
}

.file-item__meta[b-kx7oa929jy] {
    font-size: 12px;
    opacity: 0.7;
}
/* /Components/Panels/FileUploadPanel.razor.rz.scp.css */
.panel-tabs[b-pdbhooxue8]{
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 7px;
	margin-bottom: 5px;
	background-color: #eaeaea;
	padding: 10px;
	border-radius: 30px;
	
	.tab{
		--veleo-icon-size: 18px;
		padding: 8px 15px;
		border-radius: 20px;
		cursor: pointer;
		transition: all 0.2s ease-in-out;
		color: #555;
		display: flex;
		align-items: center;
		justify-content: center;
		gap: 6px;
		font-weight: var(--font-weight-semibold);
		font-size: 10pt;
		
		&:hover{
			background-color: #DDD;
		}
		
		&.active[b-pdbhooxue8]{
			//background-color: #5899d2;
			background-color: var(--color-brand-primary);
			color: #FFF;
		}
	}
}

.file-grid[b-pdbhooxue8]{
	display: grid;
	gap: 5px;
	margin-top: 20px;
}

.file-grid__row[b-pdbhooxue8]{
	display: grid;
	grid-template-columns: 30px 1fr 75px;
	gap: 5px;
	font-size: 9pt;
	color: #999;
	align-items: center;
	justify-content: center;
	
	.filename{
		/*overflow-wrap: break-word;*/
		/*word-break: break-all;*/
		
		text-overflow: ellipsis;
		overflow: hidden;
		white-space: nowrap;
	}
	
	.filesize[b-pdbhooxue8]{
		text-align: right;
	}
}

.gallery-container[b-pdbhooxue8]{
	--preview-size: 140px;
	display: grid;
	grid-gap: 7px;
	grid-template-columns: repeat(auto-fit, minmax(var(--preview-size), 0.5fr));
	grid-auto-rows: var(--preview-size);
	
	div{
		cursor: pointer;
		transition: all 0.2s ease-in-out;
		position: relative;
		display: flex;
		justify-content: center;
		align-items: center;
		
		.selected-icon{
			position: absolute;
			opacity: 0;
			transition: all 0.2s ease-in-out;
			--veleo-icon-color: #FFF;
		}
		
		img[b-pdbhooxue8]{
			width: 100%;
			height: 100%;
			object-fit: cover;
		}
		
		&.active[b-pdbhooxue8]{
			.selected-icon{
				opacity: 1;
			}
			
			&[b-pdbhooxue8]::before{
				position: absolute;
				content: "";
				top: 0;
				left: 0;
				width: 100%;
				height: 100%;
				background-color: rgba(0, 255, 0, 0.5);
			}
		}
		
		&:hover[b-pdbhooxue8]{
			opacity: 0.8;
		}
	}

	&.images[b-pdbhooxue8]{ 
		--preview-size: 140px;
		div img { object-fit: cover; }
	}
	
	&.icons[b-pdbhooxue8]{ 
		--preview-size: 64px;
		div img { object-fit: contain; }
	}
}


.list-container[b-pdbhooxue8]{
	display: grid;
	grid-auto-rows: auto;
	grid-template-columns: 1fr;
	gap: 5px;
	cursor: pointer;
	
	.list-item{
		padding: 5px 15px;
		display: grid;
		grid-gap: 5px;
		grid-template-columns: 40px auto 75px;	
		align-items: center;
		transition: all 0.2s ease-in-out;
	}

	.list-item:nth-child(odd)[b-pdbhooxue8] {
		background-color: #f2f2f2;
	}

	.list-item:nth-child(even)[b-pdbhooxue8] {
		background-color: #ffffff;
	}
	
	.list-item:hover[b-pdbhooxue8]{
		background-color: #eaeaea;
	}
	
	.list-item.active[b-pdbhooxue8]{
		background-color: rgba(0, 255, 0, 0.5);
	}
}

.image-file-info-container[b-pdbhooxue8]{
	--bg-color: #FFF;
	display: grid; 
	grid-template-columns: 1fr 75px 75px; 
	gap: 5px; 
	grid-auto-rows: auto auto;
	
	.color-box{
		background-color: var(--bg-color);
		text-align: center; 
		font-size: 8pt; 
		text-transform: uppercase; 
		color: #000;
		color: contrast-color(var(--bg-color));
	}
}

.unspash-info-container[b-pdbhooxue8]{
	display: grid; 
	grid-template-columns: 75px auto; 
	gap: 5px;
	align-items: center;
}

.empty-state-container[b-pdbhooxue8]{
	justify-content: center; 
	align-items: center; 
	display: flex; 
	height: 300px; 
	flex-direction: column; 
	gap: 10px;
	
	p{
		color: #ccc;
		text-align: center; 
		max-width: 300px;
	}
}
/* /Components/Panels/FileViewerPanel.razor.rz.scp.css */
.image-preview-panel[b-4cck0qw51w]{
	--top-left: #FFF;
	--bottom-left: #FFF;
	--top-right: #FFF;
	--bottom-right: #FFF;
	
	display: flex;
	justify-content: center; 
	align-items: center; 
	height: 100%;

	background: linear-gradient(to bottom, var(--top-left), var(--bottom-left));
}

.image-preview-panel[b-4cck0qw51w]::after{
	content: "";
	position: absolute;
	width: 100%;
	height: 100%;
	background: linear-gradient(to bottom, var(--top-right), var(--bottom-right));
	-webkit-mask-image: linear-gradient(to left, white, transparent);
}
/* /Components/Panels/LinkFamilyMemberPanel.razor.rz.scp.css */
.family-link-list-container[b-atk71kfedf] {
	padding: 1rem;
	background: var(--neutral-fill-layer-rest);
	color: var(--neutral-foreground-rest);
	border: calc(var(--stroke-width) * 1px) solid var(--neutral-stroke-layer-rest);
	border-radius: calc(var(--layer-corner-radius) * 1px);
}

.family-link-list-container + .family-link-list-container[b-atk71kfedf]{
	margin-top: 1rem;
}

.guardian[b-atk71kfedf],
.dependant[b-atk71kfedf]{
	display: grid;
	grid-template-columns: 55px auto 50px;
	align-items: center;
	padding: 6px 0;
}
/* /Components/Panels/LogInteractionPanel.razor.rz.scp.css */
span.field-validation-error[b-x8verd7msf]{
	color: var(--color-form-error);
	font-style: italic;
	font-size: 9pt;
}

div.stage-options[b-x8verd7msf]{
	
	display: grid;
	gap: 5px;
}

button.stage-option[b-x8verd7msf]{
	padding: 5px;
	border-radius: 5px;
	border-color: #ccc;

	&:hover{
		background-color: #eee;
	}

	&.selected[b-x8verd7msf]{
		background-color: var(--color-module-contacts);
		color: #FFF;
		font-weight: bold;
	}
}

.appointment-time-slots[b-x8verd7msf]{
	margin-top: 0.5rem;

	.time-group-label {
		font-size: 0.75rem;
		font-weight: bold;
		color: #666;
		margin: 0.5rem 0 0.25rem;
		text-transform: uppercase;
		letter-spacing: 0.05em;
	}

	.time-group-buttons[b-x8verd7msf] {
		display: grid;
		grid-template-columns: repeat(auto-fill, 80px);
		gap: 5px;
	}
}

.stage-grid[b-x8verd7msf]{
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-template-rows: 1fr 1fr;
	gap: 10px;
	
	.grid-left{
		grid-column: 1;
		grid-row: 1 / -1;
		
		display: flex;
		flex-direction: column;
		gap: 5px;
	}
	
	.grid-top[b-x8verd7msf]{
		grid-column: 2;
		grid-row: 1;
		display: flex;
		flex-direction: column;
		gap: 5px;
	}
	
	.grid-bottom[b-x8verd7msf]{
		grid-column: 2;
		grid-row: 2;
		display: flex;
		flex-direction: column;
		gap: 5px;
		justify-content: flex-end;
	}
}
/* /Components/Panels/ManageFamilyPanel.razor.rz.scp.css */
.family-link-list-container[b-a21nxdqlhg] {
	padding: 1rem;
	background: var(--neutral-fill-layer-rest);
	color: var(--neutral-foreground-rest);
	border: calc(var(--stroke-width) * 1px) solid var(--neutral-stroke-layer-rest);
	border-radius: calc(var(--layer-corner-radius) * 1px);
}

.family-link-list-container + .family-link-list-container[b-a21nxdqlhg]{
	margin-top: 1rem;
}

.family-link[b-a21nxdqlhg]{
	display: grid;
	grid-template-columns: max-content 1fr min-content 2rem;
	grid-template-areas: "avatar name options remove";
	gap: 10px;
	align-items: center;
	padding: 8px 0;
	border-bottom: 1px solid var(--neutral-stroke-divider-rest);
}

.family-link .name[b-a21nxdqlhg]{
	grid-area: name;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 4px;
}

.family-link .options[b-a21nxdqlhg]{
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
}

@media (max-width: 600px){
	.family-link[b-a21nxdqlhg]{
		grid-template-columns: 55px 1fr 1fr 40px;
	}
}
/* /Components/Panels/ManageSubscriptionPanel.razor.rz.scp.css */
/*
 * Manage subscription panel.
 *
 * The panel shell, the white cards, the blue section titles and the grey CANCEL / green SAVE footer all
 * come from the application's existing panel styles - this file only pins the values the redesign fixes
 * exactly, and adds the surfaces the shell has no primitive for: the payment-method radio list, the
 * action rows, the token ledger and the stepper.
 *
 * The MOCK treatments are deliberately not subtle. Everything they mark saves nothing.
 */

/* -- cards --------------------------------------------------------------------------------------- */

.manage-panel .veleo-panel-section[b-1ax5rjt19z] {
	display: flex;
	flex-direction: column;
	gap: 17px;
	padding: 20px;
	background: var(--rc-surface);
	border: 0;
	border-radius: 8px;
	margin-bottom: 14px;
}

.manage-panel .veleo-panel-section h5[b-1ax5rjt19z] {
	font-weight: 600;
	font-size: 16px;
	line-height: 1.25;
	color: var(--rc-panel-title);
	margin: 0 !important;
}

/* The subtitle sits 3px under its title rather than a field-gap away, so the two read as one block. */
.manage-panel .veleo-panel-section h5 + p[b-1ax5rjt19z] {
	margin: -14px 0 0;
	font-weight: 400;
	font-size: 12.5px;
	line-height: 1.4;
	color: var(--rc-panel-muted);
}

.manage-panel .veleo-panel-section p[b-1ax5rjt19z] {
	margin: 0;
	font-weight: 400;
	font-size: 12.5px;
	line-height: 1.4;
	color: var(--rc-panel-muted);
}

/* -- fields -------------------------------------------------------------------------------------- */

.manage-panel .veleo-form__group[b-1ax5rjt19z] {
	display: flex;
	flex-direction: column;
	gap: 6px;
	margin-top: 0;
}

.manage-panel .veleo-form__group:not(:first-child)[b-1ax5rjt19z] {
	margin-top: 0;
}

.manage-panel__label[b-1ax5rjt19z] {
	font-weight: 600;
	font-size: 12.5px;
	line-height: 1.2;
	color: var(--rc-panel-label);
}

.manage-panel__hint[b-1ax5rjt19z] {
	font-weight: 400;
	font-size: 11.5px;
	line-height: 1.4;
	color: var(--rc-panel-muted-soft);
}

.manage-panel__field[b-1ax5rjt19z] {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	padding: 11px 13px;
	border-radius: 6px;
	background: var(--rc-panel-field);
	font-weight: 400;
	font-size: 13px;
	line-height: 1.2;
	color: var(--rc-panel-text);
}

/* Read-only means "the system owns this", so it is drawn as a disabled field with a padlock rather
   than as an editable one that rejects you. */
.manage-panel__field--readonly[b-1ax5rjt19z] {
	background: var(--rc-panel-readonly-bg);
	border: 1px dashed var(--rc-panel-readonly-border);
	color: var(--rc-panel-muted-strong);
}

/* -- MOCK markers -------------------------------------------------------------------------------- */

.manage-panel__mock-tag[b-1ax5rjt19z] {
	display: inline-block;
	margin-left: 6px;
	padding: 3px 6px;
	border-radius: 4px;
	background: var(--rc-danger-wash);
	font-weight: 700;
	font-size: 8.5px;
	line-height: 1;
	letter-spacing: .09em;
	text-transform: uppercase;
	color: var(--rc-danger-fg);
	vertical-align: middle;
}

.manage-panel__mock-note[b-1ax5rjt19z] {
	padding: 10px 12px;
	border-radius: 6px;
	background: var(--rc-danger-bg);
	border-left: 3px solid var(--rc-danger-fg);
	font-weight: 400;
	font-size: 11.5px;
	line-height: 1.45;
	color: var(--rc-danger-fg-deep);
}

.manage-panel__mock-note strong[b-1ax5rjt19z] {
	letter-spacing: .09em;
}

/* -- payment method list ------------------------------------------------------------------------- */

.manage-panel__methods[b-1ax5rjt19z] {
	display: flex;
	flex-direction: column;
	gap: 7px;
}

.manage-panel__method[b-1ax5rjt19z] {
	display: flex;
	align-items: center;
	gap: 11px;
	width: 100%;
	padding: 11px 13px;
	border: 1px solid var(--rc-panel-rule);
	border-radius: 6px;
	background: var(--rc-surface);
	text-align: left;
	cursor: pointer;
	transition: border-color .12s ease-in-out, background-color .12s ease-in-out;
}

.manage-panel__method:hover[b-1ax5rjt19z] {
	border-color: var(--rc-panel-title);
}

.manage-panel__method--selected[b-1ax5rjt19z] {
	background: var(--rc-panel-title-wash);
	border-color: var(--rc-panel-title);
}

.manage-panel__radio[b-1ax5rjt19z] {
	width: 17px;
	height: 17px;
	flex: none;
	box-sizing: border-box;
	border-radius: 50%;
	border: 1.5px solid var(--rc-panel-disabled-fg);
	display: flex;
	align-items: center;
	justify-content: center;
}

.manage-panel__radio--selected[b-1ax5rjt19z] {
	border-color: var(--rc-panel-title);
}

.manage-panel__radio--selected[b-1ax5rjt19z]::after {
	content: "";
	width: 9px;
	height: 9px;
	border-radius: 50%;
	background: var(--rc-panel-title);
}

.manage-panel__card-glyph[b-1ax5rjt19z] {
	position: relative;
	width: 27px;
	height: 18px;
	flex: none;
	box-sizing: border-box;
	border-radius: 3px;
	border: 1px solid var(--rc-panel-disabled-bg);
	background: var(--rc-surface);
	overflow: hidden;
}

.manage-panel__card-stripe[b-1ax5rjt19z] {
	position: absolute;
	left: 0;
	right: 0;
	top: 3.7px;
	height: 3.4px;
}

.manage-panel__method-text[b-1ax5rjt19z] {
	display: flex;
	flex-direction: column;
	gap: 2px;
	flex: 1;
	min-width: 0;
}

.manage-panel__method-name[b-1ax5rjt19z] {
	font-weight: 500;
	font-size: 13px;
	line-height: 1.25;
	color: var(--rc-panel-text);
}

.manage-panel__method-note[b-1ax5rjt19z] {
	font-weight: 400;
	font-size: 11.5px;
	line-height: 1.3;
	color: var(--rc-panel-muted-soft);
}

.manage-panel__method-note--problem[b-1ax5rjt19z] {
	color: var(--rc-danger-fg);
}

.manage-panel__tag[b-1ax5rjt19z] {
	flex: none;
	padding: 5px 8px;
	border-radius: 20px;
	background: var(--rc-panel-rule-soft);
	font-weight: 700;
	font-size: 8.5px;
	line-height: 1;
	letter-spacing: .09em;
	text-transform: uppercase;
	color: var(--rc-panel-muted-strong);
	white-space: nowrap;
}

.manage-panel__tag--in-use[b-1ax5rjt19z] {
	background: var(--rc-panel-title);
	color: var(--rc-surface);
}

.manage-panel__tag--expired[b-1ax5rjt19z] {
	background: var(--rc-danger-bg);
	color: var(--rc-danger-fg);
}

/* -- action rows --------------------------------------------------------------------------------- */

.manage-panel__actions[b-1ax5rjt19z] {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

/* Each row carries its own foreground and border through custom properties, because the colour is the
   row's meaning - red for money owed or a plan ending, green for coming back on. */
.manage-panel__action[b-1ax5rjt19z] {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	width: 100%;
	padding: 13px 14px;
	border: 1px solid var(--action-border, var(--rc-border-control));
	border-radius: 6px;
	background: var(--rc-surface);
	text-align: left;
	cursor: pointer;
	transition: background-color .12s ease-in-out;
}

.manage-panel__action:hover[b-1ax5rjt19z] {
	background: var(--rc-surface-footer);
}

.manage-panel__action-text[b-1ax5rjt19z] {
	display: flex;
	flex-direction: column;
	gap: 2px;
	min-width: 0;
}

.manage-panel__action-label[b-1ax5rjt19z] {
	font-weight: 600;
	font-size: 13px;
	line-height: 1.2;
	color: var(--action-fg, var(--rc-navy));
}

.manage-panel__action-detail[b-1ax5rjt19z] {
	font-weight: 400;
	font-size: 11.5px;
	line-height: 1.35;
	color: var(--rc-panel-muted-soft);
}

/* -- back link ----------------------------------------------------------------------------------- */

.manage-panel__back[b-1ax5rjt19z] {
	display: flex;
	align-items: center;
	gap: 7px;
	align-self: flex-start;
	padding: 0;
	margin-bottom: 14px;
	border: 0;
	background: none;
	font-weight: 600;
	font-size: 12px;
	line-height: 1;
	color: var(--rc-panel-title);
	cursor: pointer;
}

.manage-panel__back:hover[b-1ax5rjt19z] {
	text-decoration: underline;
}

/* -- token pips and legend ----------------------------------------------------------------------- */

.manage-panel__token-pips[b-1ax5rjt19z] {
	display: flex;
	gap: 5px;
}

.manage-panel__token-pip[b-1ax5rjt19z] {
	flex: 1;
	height: 14px;
	box-sizing: border-box;
	border-radius: 3px;
	background: var(--rc-surface);
	border: 1px solid var(--rc-border-control-strong);
}

.manage-panel__token-pip--redeemed[b-1ax5rjt19z] {
	background: var(--rc-positive-dot);
	border-color: var(--rc-positive-dot);
}

.manage-panel__legend[b-1ax5rjt19z] {
	display: flex;
	gap: 18px;
}

.manage-panel__legend span[b-1ax5rjt19z] {
	display: flex;
	align-items: center;
	gap: 6px;
	font-weight: 400;
	font-size: 11.5px;
	line-height: 1;
	color: var(--rc-panel-muted);
}

.manage-panel__swatch[b-1ax5rjt19z] {
	width: 11px;
	height: 11px;
	flex: none;
	box-sizing: border-box;
	border-radius: 3px;
	background: var(--rc-surface);
	border: 1px solid var(--rc-border-control-strong);
}

.manage-panel__swatch--redeemed[b-1ax5rjt19z] {
	background: var(--rc-positive-dot);
	border-color: var(--rc-positive-dot);
}

/* -- token ledger -------------------------------------------------------------------------------- */

/* The ledger card runs its rows edge to edge, so it overrides the card's own padding rather than
   nesting a second box inside it. */
.manage-panel .veleo-panel-section.manage-panel__ledger[b-1ax5rjt19z] {
	padding: 0;
	gap: 0;
	overflow: hidden;
}

.manage-panel__ledger-head[b-1ax5rjt19z] {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	padding: 16px 20px 12px;
}

.manage-panel__ledger-count[b-1ax5rjt19z] {
	font-weight: 400;
	font-size: 11.5px;
	line-height: 1;
	color: var(--rc-panel-muted);
	white-space: nowrap;
}

.manage-panel__ledger-state[b-1ax5rjt19z] {
	padding: 14px 20px 18px;
	border-top: 1px solid var(--rc-panel-divider);
	font-weight: 400;
	font-size: 11.5px;
	line-height: 1.45;
	color: var(--rc-panel-muted-soft);
}

.manage-panel__token[b-1ax5rjt19z] {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 11px 20px;
	border-top: 1px solid var(--rc-panel-divider);
}

.manage-panel__token-chip[b-1ax5rjt19z] {
	width: 26px;
	height: 26px;
	flex: none;
	border-radius: 6px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: var(--rc-neutral-bg);
	font-weight: 700;
	font-size: 11px;
	line-height: 1;
	color: var(--rc-neutral-fg);
}

.manage-panel__token-chip--redeemed[b-1ax5rjt19z] {
	background: var(--rc-positive-bg);
	color: var(--rc-positive-fg);
}

.manage-panel__token-text[b-1ax5rjt19z] {
	display: flex;
	flex-direction: column;
	gap: 2px;
	flex: 1;
	min-width: 0;
}

.manage-panel__token-what[b-1ax5rjt19z] {
	font-weight: 500;
	font-size: 12.5px;
	line-height: 1.3;
	color: var(--rc-panel-text);
}

.manage-panel__token-meta[b-1ax5rjt19z] {
	font-weight: 400;
	font-size: 11px;
	line-height: 1.3;
	color: var(--rc-panel-muted-soft);
}

.manage-panel__token-state[b-1ax5rjt19z] {
	flex: none;
	padding: 5px 9px;
	border-radius: 20px;
	background: var(--rc-neutral-bg);
	font-weight: 700;
	font-size: 9px;
	line-height: 1;
	letter-spacing: .09em;
	text-transform: uppercase;
	color: var(--rc-neutral-fg);
	white-space: nowrap;
}

.manage-panel__token-state--redeemed[b-1ax5rjt19z] {
	background: var(--rc-positive-bg);
	color: var(--rc-positive-fg);
}

/* -- stepper ------------------------------------------------------------------------------------- */

.manage-panel__stepper[b-1ax5rjt19z] {
	display: flex;
	align-items: center;
	gap: 8px;
}

.manage-panel__stepper button[b-1ax5rjt19z] {
	width: 38px;
	height: 40px;
	flex: none;
	border: 0;
	border-radius: 6px;
	background: var(--rc-panel-field);
	font-weight: 600;
	font-size: 18px;
	line-height: 1;
	color: var(--rc-panel-text);
	cursor: pointer;
	transition: background-color .12s ease-in-out;
}

.manage-panel__stepper button:hover:not(:disabled)[b-1ax5rjt19z] {
	background: var(--rc-panel-field-hover);
}

.manage-panel__stepper button:disabled[b-1ax5rjt19z] {
	opacity: .45;
	cursor: not-allowed;
}

.manage-panel__stepper-value[b-1ax5rjt19z] {
	flex: 1;
	padding: 11px 13px;
	border-radius: 6px;
	background: var(--rc-panel-field);
	font-weight: 600;
	font-size: 13px;
	line-height: 1.2;
	font-variant-numeric: tabular-nums;
	color: var(--rc-panel-text);
	text-align: center;
}

/* -- notices ------------------------------------------------------------------------------------- */

.manage-panel__preview[b-1ax5rjt19z] {
	padding: 12px 14px;
	border-radius: 6px;
	background: var(--rc-positive-bg);
	font-weight: 400;
	font-size: 12px;
	line-height: 1.5;
	color: var(--rc-positive-fg);
}

.manage-panel__notice[b-1ax5rjt19z] {
	padding: 12px 14px;
	border-radius: 6px;
	font-weight: 400;
	font-size: 12px;
	line-height: 1.5;
}

.manage-panel__notice--warning[b-1ax5rjt19z] {
	background: var(--rc-warning-bg);
	color: var(--rc-warning-fg);
}

.manage-panel__notice--info[b-1ax5rjt19z] {
	background: var(--rc-panel-title-wash);
	color: var(--rc-navy);
}

.manage-panel__notice--blocked[b-1ax5rjt19z] {
	background: var(--rc-danger-bg);
	color: var(--rc-danger-fg);
}

/* -- Fluent input overrides ---------------------------------------------------------------------- */

/* Selects and date pickers carry their own label element; ours sits above them, so Fluent's is
   suppressed rather than fought with. */
[b-1ax5rjt19z] .fluent-input-label {
	display: none;
}
/* /Components/Panels/Payments/GlobalPaymentsPayUI.razor.rz.scp.css */
/* /Components/Panels/Payments/PaymentMethodCard.razor.rz.scp.css */
/* A stored payment method drawn at bank-card proportions (ISO/IEC 7810 ID-1, 85.6 x 53.98mm) */
.payment-card[b-zl14pa1bt3] {
	--card-ink: #ffffff;
	--card-ink-muted: rgba(255, 255, 255, 0.72);
	--card-bg: linear-gradient(135deg, #3b4252 0%, #1f2430 100%);

	position: relative;
	display: flex;
	flex-direction: column;
	gap: 6px;
	/* Grows past the card proportion rather than clipping when the content needs it */
	aspect-ratio: 1.586;
	min-width: 0;
	padding: 14px 16px 12px;
	border-radius: 14px;
	color: var(--card-ink);
	/* Soft sheen across the face, as on a laminated card */
	background: radial-gradient(circle at 88% -12%, rgba(255, 255, 255, 0.2) 0%, rgba(255, 255, 255, 0) 48%), var(--card-bg);
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.12), 0 8px 20px -8px rgba(15, 23, 42, 0.45);
	transition: transform 160ms ease, box-shadow 160ms ease;
}

.payment-card:hover[b-zl14pa1bt3] {
	transform: translateY(-2px);
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.12), 0 14px 28px -10px rgba(15, 23, 42, 0.5);
}

@media (prefers-reduced-motion: reduce) {
	.payment-card[b-zl14pa1bt3],
	.payment-card:hover[b-zl14pa1bt3] {
		transition: none;
		transform: none;
	}
}

/* Colourways */
.payment-card--visa[b-zl14pa1bt3] { --card-bg: linear-gradient(135deg, #2541b2 0%, #1a1f71 100%); }
.payment-card--mastercard[b-zl14pa1bt3] { --card-bg: linear-gradient(135deg, #2d2d2f 0%, #111113 100%); }
.payment-card--amex[b-zl14pa1bt3] { --card-bg: linear-gradient(135deg, #3d8fd1 0%, #1d5f9e 100%); }
.payment-card--eftpos[b-zl14pa1bt3] { --card-bg: linear-gradient(135deg, #1e8a8a 0%, #0f5257 100%); }
.payment-card--apple-pay[b-zl14pa1bt3] { --card-bg: linear-gradient(135deg, #2b2b2e 0%, #000000 100%); }
.payment-card--bank[b-zl14pa1bt3] { --card-bg: linear-gradient(135deg, #1f7a5a 0%, #0d4535 100%); }
.payment-card--agreement[b-zl14pa1bt3] { --card-bg: linear-gradient(135deg, #6d4bc4 0%, #3e2785 100%); }
.payment-card--google-pay[b-zl14pa1bt3] {
	--card-ink: #202124;
	--card-ink-muted: rgba(32, 33, 36, 0.66);
	--card-bg: linear-gradient(135deg, #ffffff 0%, #eef1f5 100%);
	box-shadow: inset 0 0 0 1px #dadce0, 0 8px 20px -10px rgba(15, 23, 42, 0.35);
}

/* Expired or no longer chargeable: drained of colour so it reads as unavailable at a glance */
.payment-card--unusable[b-zl14pa1bt3] {
	filter: grayscale(0.85);
	opacity: 0.78;
}

.payment-card__top[b-zl14pa1bt3] {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 8px;
}

.payment-card__title[b-zl14pa1bt3] {
	font-size: 0.8125rem;
	font-weight: 600;
	letter-spacing: 0.01em;
	line-height: 1.25;
	/* Bank names such as "Australia & New Zealand Banking Group Limited" get two lines before truncating */
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	line-clamp: 2;
	overflow: hidden;
	overflow-wrap: anywhere;
}

.payment-card__brand[b-zl14pa1bt3] {
	--veleo-icon-color: currentColor;
	--veleo-icon-color-hover: currentColor;
	display: flex;
	align-items: center;
	flex-shrink: 0;
	line-height: 1;
}

.brand-visa[b-zl14pa1bt3] {
	font-size: 1.05rem;
	font-weight: 800;
	font-style: italic;
	letter-spacing: 0.04em;
}

.brand-amex[b-zl14pa1bt3] {
	padding: 2px 4px;
	border: 1.5px solid currentColor;
	border-radius: 3px;
	font-size: 0.625rem;
	font-weight: 800;
	letter-spacing: 0.08em;
}

.brand-mastercard[b-zl14pa1bt3] {
	display: flex;
}

.brand-mastercard i[b-zl14pa1bt3] {
	width: 20px;
	height: 20px;
	border-radius: 50%;
	background: #eb001b;
}

.brand-mastercard i + i[b-zl14pa1bt3] {
	margin-left: -8px;
	background: #f79e1b;
	mix-blend-mode: screen;
}

.brand-google[b-zl14pa1bt3] {
	font-size: 1.05rem;
	font-weight: 700;
	background: conic-gradient(from -45deg, #ea4335 0 25%, #4285f4 0 50%, #34a853 0 75%, #fbbc05 0 100%);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
}

.payment-card__chip[b-zl14pa1bt3] {
	width: 30px;
	height: 22px;
	margin-top: 2px;
	border-radius: 5px;
	background:
		linear-gradient(90deg, transparent 45%, rgba(0, 0, 0, 0.18) 45% 55%, transparent 55%),
		linear-gradient(0deg, transparent 45%, rgba(0, 0, 0, 0.18) 45% 55%, transparent 55%),
		linear-gradient(135deg, #f3d98b 0%, #c9a24a 100%);
}

.payment-card__number[b-zl14pa1bt3] {
	margin-top: auto;
	font-family: ui-monospace, "SF Mono", "Cascadia Mono", Menlo, monospace;
	font-size: 0.875rem;
	letter-spacing: 0.08em;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	font-variant-numeric: tabular-nums;
}

.payment-card__bottom[b-zl14pa1bt3] {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 8px;
	font-size: 0.75rem;
	font-weight: 500;
}

.payment-card__field[b-zl14pa1bt3] {
	display: flex;
	flex-direction: column;
	min-width: 0;
}

.payment-card__field span:last-child[b-zl14pa1bt3] {
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	font-variant-numeric: tabular-nums;
}

.payment-card__field--end[b-zl14pa1bt3] {
	align-items: flex-end;
	flex-shrink: 0;
}

.payment-card__caption[b-zl14pa1bt3] {
	font-size: 0.5625rem;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--card-ink-muted);
}

.payment-card__meta[b-zl14pa1bt3] {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 6px;
	padding-top: 6px;
	border-top: 1px solid color-mix(in srgb, var(--card-ink) 18%, transparent);
	font-size: 0.6875rem;
	color: var(--card-ink-muted);
}

.payment-card__site[b-zl14pa1bt3] {
	--veleo-icon-color: currentColor;
	display: inline-flex;
	align-items: center;
	gap: 4px;
	min-width: 0;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.payment-card__flag[b-zl14pa1bt3] {
	flex-shrink: 0;
	padding: 1px 6px;
	border-radius: 999px;
	background: color-mix(in srgb, var(--card-ink) 20%, transparent);
	color: var(--card-ink);
	font-weight: 600;
}
/* /Components/Panels/Payments/PaymentMethodsPanel.razor.rz.scp.css */
.payment-methods__intro[b-a4qi4mjcas] {
	margin: 0 0 16px;
	color: var(--neutral-foreground-hint-rest);
}

/* Each stored method takes a row: the card, then a column reserved for its actions */
.payment-methods__wallet[b-a4qi4mjcas] {
	display: grid;
	grid-template-columns: minmax(0, 2fr) minmax(0, 1fr);
	gap: 16px;
	align-items: start;
}

.payment-methods__actions[b-a4qi4mjcas] {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 8px;
	min-width: 0;
}

.payment-methods__types[b-a4qi4mjcas] {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
}

.payment-methods__type[b-a4qi4mjcas] {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 14px 16px;
	border: 1px solid var(--neutral-stroke-rest);
	border-radius: var(--style-border-radius);
	background: var(--neutral-fill-layer-rest);
	color: var(--neutral-foreground-rest);
	font: inherit;
	font-weight: var(--font-weight-semibold);
	text-align: left;
	cursor: pointer;
	transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.payment-methods__type:hover:not(:disabled)[b-a4qi4mjcas] {
	border-color: var(--accent-fill-rest);
}

.payment-methods__type:focus-visible[b-a4qi4mjcas] {
	outline: 2px solid var(--accent-fill-rest);
	outline-offset: 2px;
}

.payment-methods__type--selected[b-a4qi4mjcas] {
	border-color: var(--accent-fill-rest);
	box-shadow: inset 0 0 0 1px var(--accent-fill-rest);
	color: var(--accent-foreground-rest);
}

.payment-methods__type:disabled[b-a4qi4mjcas] {
	cursor: not-allowed;
	opacity: 0.6;
}

.payment-methods__bank-fields[b-a4qi4mjcas] {
	display: grid;
	grid-template-columns: minmax(0, 2fr) minmax(0, 3fr);
	gap: 12px;
	align-items: start;
}

/* The grid gap spaces these fields; the global stacked-group top margin would push the second one down */
.payment-methods__bank-fields > .veleo-form__group[b-a4qi4mjcas] {
	margin-top: 0;
}

@media (max-width: 480px) {
	.payment-methods__wallet[b-a4qi4mjcas],
	.payment-methods__bank-fields[b-a4qi4mjcas] {
		grid-template-columns: minmax(0, 1fr);
	}

	/* Actions sit under their card instead of beside it */
	.payment-methods__actions[b-a4qi4mjcas] {
		flex-direction: row;
		margin-bottom: 8px;
	}
}
/* /Components/Panels/PickAdmissionDefinitionPanel.razor.rz.scp.css */
.pick-result-list[b-n8aopflmus]{
	div.pick-result{
		display: flex;
		align-items: center;
	}
}

[b-n8aopflmus] .fluent-input-label{
	color: var(--color-background);
	font-weight: 600;
	margin: 0;
	padding: 0;
}
/* /Components/Panels/PickCompanyPanel.razor.rz.scp.css */
.pick-result-list[b-curwkyjoel]{
	div.pick-result{
		display: grid;
		grid-template-columns: auto 40px;
		align-items: center;

		div.name span{
			display: inline-block; 
			font-size: 8pt; 
			color: #555; 
			margin-left: 10px;
		}

		div.indicator[b-curwkyjoel]{
			justify-items: right;
			align-items: center;
			display: flex;
		}
	}
}

[b-curwkyjoel] .fluent-input-label{
	color: var(--color-background);
	font-weight: 600;
	margin: 0;
	padding: 0;
}
/* /Components/Panels/PickContactPanel.razor.rz.scp.css */
.pick-result-list[b-j5ok010sl8]{
	div.pick-result{
		display: grid;
		grid-template-columns: 55px auto 40px;
		align-items: center;

		div.age{
			text-align: right;
		}
	}
}

[b-j5ok010sl8] .fluent-input-label{
	color: var(--color-background);
	font-weight: 600;
	margin: 0;
	padding: 0;
}
/* /Components/Panels/PickPosLayoutPanel.razor.rz.scp.css */
.pick-result-list[b-58o6vs64nm]{
	div.pick-result{
		display: flex;
		align-items: center;
	}
}

[b-58o6vs64nm] .fluent-input-label{
	color: var(--color-background);
	font-weight: 600;
	margin: 0;
	padding: 0;
}
/* /Components/Panels/PickProductPanel.razor.rz.scp.css */
.pick-result-list[b-qd5gojv92m]{
	div.pick-result{
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 0.5rem;
	}
}

[b-qd5gojv92m] .fluent-input-label{
	color: var(--color-background);
	font-weight: 600;
	margin: 0;
	padding: 0;
}
/* /Components/Panels/PickSubscriptionPanel.razor.rz.scp.css */
.pick-result-list[b-ealak5tafb]{
	div.pick-result{
		display: flex;
		align-items: center;
	}
}

[b-ealak5tafb] .fluent-input-label{
	color: var(--color-background);
	font-weight: 600;
	margin: 0;
	padding: 0;
}
/* /Components/Panels/RescheduleActivityPanel.razor.rz.scp.css */
.time-list[b-p09804r3ol] {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 0.5rem;
}

.time-button[b-p09804r3ol] {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	padding: 0.5rem;
	border-radius: 3px;
	--background-color: #efefef;
	background-color: var(--background-color);
	color: #777;
	font-weight: 600;
	cursor: pointer;
	user-select: none;
	transition: background-color ease-in-out 0.1s;

	.time-button-price {
		font-size: 10pt;
		font-weight: normal;
	}
	
	span[b-p09804r3ol] {
		white-space: nowrap;
	}
}

.time-button:not(.time-button_disabled):hover[b-p09804r3ol] {
	background-color: color-mix(in hsl, var(--background-color), #fff 25%);
}

.time-button.time-button_selected[b-p09804r3ol] {
	--background-color: var(--color-module-settings);
	color: #fff;
}

.time-button.time-button_disabled[b-p09804r3ol] {
	opacity: 0.3;
	cursor: not-allowed;
}

.space-between[b-p09804r3ol] {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.icon-text[b-p09804r3ol] {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	font-size: 12pt;
	margin: 0.25rem 0;
}

.pricing-info[b-p09804r3ol] {
	font-size: 8pt;
	color: #555;
	text-align: right;
}

.booking-panel-section-step h5[b-p09804r3ol] {
	margin: 0;
	color: inherit;
	font-weight: var(--font-weight-semibold);
}

.reschedule-confirmation-diff[b-p09804r3ol] {
	display: flex;
	gap: 1rem;
	align-items: center;
}

.reschedule-confirmation-diff-original[b-p09804r3ol] {
	color: #999;
	text-decoration: line-through;
}
/* /Components/Panels/SendEmailPanel.razor.rz.scp.css */
.attachment-section[b-c4i7tpnbj6] {
    margin-top: 16px;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.selected-files[b-c4i7tpnbj6] {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.file-chip[b-c4i7tpnbj6] {
    display: flex;
    align-items: center;
    gap: 4px;
    padding: 4px 8px;
    background: var(--neutral-fill-secondary-rest);
    border-radius: 4px;
    font-size: 13px;
}

.file-chip__remove[b-c4i7tpnbj6] {
    background: none;
    border: none;
    cursor: pointer;
    padding: 0;
    color: var(--neutral-foreground-rest);
    display: flex;
    align-items: center;
}
/* /Components/Panels/SendSmsPanel.razor.rz.scp.css */
/* SendSmsPanel specific styles */
/* /Components/Panels/SkillAssessmentPanel.razor.rz.scp.css */
.container-defaults[b-zs00wr2uoz]{
	background: var(--neutral-fill-layer-rest);
	color: var(--neutral-foreground-rest);
	border: calc(var(--stroke-width) * 1px) solid var(--neutral-stroke-layer-rest);
	border-radius: calc(var(--layer-corner-radius) * 1px);
	padding: 20px;
	margin-bottom: 20px;
}

.assessor[b-zs00wr2uoz]{
	background-color: floralwhite;
}

.contact[b-zs00wr2uoz]{
	background-color: mintcream;
}

.must-see-items[b-zs00wr2uoz]{
	.msitem{
		display: grid;
		grid-template-columns: 30px 1fr;
		gap: 10px;
		margin-bottom: 10px;
		background-color: peachpuff;
		align-items: center;
		padding: 20px 35px 20px 15px;
		border-radius: 30px;
		
		.index{
			font-size: 20pt;
			color: salmon;
			text-align: center;
		}
		
		.item[b-zs00wr2uoz]{
			
		}
	}
}

.skill-assessment-list[b-zs00wr2uoz]{
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.skill-strand[b-zs00wr2uoz]{
	background: var(--neutral-fill-layer-rest);
	border: calc(var(--stroke-width) * 1px) solid var(--neutral-stroke-layer-rest);
	border-radius: calc(var(--layer-corner-radius) * 1px);
	overflow: hidden;
}

.skill-strand__heading[b-zs00wr2uoz]{
	margin: 0;
	padding: 8px 16px;
	color: #3D3D3D;
	background-color: #eee;
	font-size: 12px;
	font-style: normal;
	font-weight: 700;
	line-height: normal;
}

.skill-card[b-zs00wr2uoz]{
	padding: 16px 16px 18px;
	border-top: 1px solid #ececec;
}

.skill-card_passed[b-zs00wr2uoz]{
	border-left: 4px solid var(--skill-colour);
}

.skill-card__top[b-zs00wr2uoz]{
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 12px;
	align-items: start;
}

.skill-card__code[b-zs00wr2uoz]{
	font-size: 10px;
	color: #777;
	margin-bottom: 4px;
}

.skill-card__name[b-zs00wr2uoz]{
	font-size: 14px;
	font-weight: 500;
	line-height: 1.35;
	color: #222;
}

.skill-card__message[b-zs00wr2uoz]{
	display: block;
	padding: 6px 10px;
	font-size: 12px;
	background-color: #eee;
	border-radius: 5px;
	border-left: 5px solid #1c7dce;
	margin-top: 10px;
}

.skill-card__actions[b-zs00wr2uoz]{
	display: flex;
	align-items: center;
	gap: 12px;
}

[b-zs00wr2uoz] .skill-card__icon-btn{
	width: 44px;
	height: 44px;
	min-width: 44px;
	padding: 0;
	border: none;
	border-radius: 10px;
	background-color: transparent;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

[b-zs00wr2uoz] .skill-card__icon-btn i{
	font-size: 1.5rem !important;
	width: 1.5rem;
	height: 1.5rem;
	flex: none;
}

.skill-card__ratings[b-zs00wr2uoz]{
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 12px;
}

.skill-card__ratings span.rating-label[b-zs00wr2uoz]{
	--rating-color: #999;
	padding: 1px 10px;
	border: 1px solid var(--rating-color);
	color: var(--rating-color);
	font-size: 11px;
	border-radius: 10px;
	text-transform: uppercase;
	cursor: pointer;
}

.skill-card__ratings span.rating-label:hover[b-zs00wr2uoz]{
	background-color: #eee;
}

.skill-card__ratings span.rating-label.old-rating[b-zs00wr2uoz]{
	--lighter-rating-color: color-mix(in srgb, var(--rating-color) 20%, white);
	background-color: var(--lighter-rating-color);
}

.skill-card__ratings span.rating-label.new-rating[b-zs00wr2uoz]{
	background-color: var(--rating-color);
	color: #fff;
	font-weight: bold;
}

.skill-card__ratings span.rating-label span.desktop[b-zs00wr2uoz]{display: none}
.skill-card__ratings span.rating-label span.mobile[b-zs00wr2uoz]{display: inline}

@media (min-width: 600px){
	.skill-card__ratings span.rating-label span.desktop[b-zs00wr2uoz]{display: inline}
	.skill-card__ratings span.rating-label span.mobile[b-zs00wr2uoz]{display: none}
}

.progression-suggestions[b-zs00wr2uoz]{
	text-align: center;
	
	h5{margin: 0; padding: 0;}
	
	.animation-container[b-zs00wr2uoz]{
		display: flex;
		justify-content: center;
		align-items: center;
		height: 100px;
	}
	
	.progression-suggestion[b-zs00wr2uoz]{
		
		border-radius: 5px;
		margin-bottom: 10px;
		padding: 10px;
		background-color: #eee;
		border: 1px solid #ccc;
		cursor: pointer;
		transition: all 0.2s ease;
		
		&.active{
			background-color: #5ECF2F;
			color: #fff;
		}
		
		span.level-name[b-zs00wr2uoz]{
			font-weight: bold;
			display: block;
		}
		span.stream-name[b-zs00wr2uoz]{
			font-size: 9pt;
			display: block;
		}
	}
}
/* /Components/Panels/SubscriptionJoiningPanel.razor.rz.scp.css */
.subscription-list-item[b-ri4m2q1lzl] {
	cursor: pointer;
	padding: 1rem;
	background-color: white;
	color: #1a1a1a;
	border: 1px solid #efefef;
	border-radius: 8px;
	
	.subscription-list-item-name {
		font-weight: bold;
	}
}

.date-list[b-ri4m2q1lzl] {
	display: flex;
	align-items: center;
	gap: 0.5rem;
}

.date-button[b-ri4m2q1lzl] {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	padding: 0.5rem;
	border-radius: 3px;
	--background-color: #efefef;
	background-color: var(--background-color);
	color: #777;
	font-weight: 600;
	cursor: pointer;
	user-select: none;
	transition: background-color ease-in-out 0.1s;
	
		.date-button-day {
		font-size: 10pt;
		font-weight: normal;
	}
}

.date-button:not(.date-button_disabled):hover[b-ri4m2q1lzl] {
	background-color: color-mix(in hsl, var(--background-color), #fff 25%);
}

.date-button.date-button_selected[b-ri4m2q1lzl] {
	--background-color: var(--color-module-settings);
	color: #fff;
}

.date-button.date-button_disabled[b-ri4m2q1lzl] {
	opacity: 0.3;
	cursor: not-allowed;
}

.space-between[b-ri4m2q1lzl] { 
	display: flex; 
	align-items: center;
	justify-content: space-between; 
}

.icon-text[b-ri4m2q1lzl] {
	display: flex; 
	align-items: center; 
	gap: 0.5rem;
	font-size: 12pt;
	margin: 0.25rem 0;
}

.add-ons-list[b-ri4m2q1lzl] { 
	background-color: #efefef;
	display: flex;
	flex-direction: column;
	padding: 0.5rem 1rem;
	border-radius: 8px;
}

.pricing-info[b-ri4m2q1lzl] {
	font-size: 8pt;
	color: #555;
	text-align: right;
}

/* The form title, intro, section headers and advisory bar now come from FormDefinitionRenderer. */
/* /Components/Panels/SuspendSubscriptionPanel.razor.rz.scp.css */
/*
 * The tinted blocks in the suspend panel. Each colour carries meaning rather than decoration: amber for
 * a constraint the operator has to work within, green for one that has been lifted, blue for the
 * policy's own instructions.
 */

.subscription-action-panel__instructions[b-5j3oyaed1a] {
	background: #F1F6F9;
	border-left: 3px solid #044466;
	border-radius: 6px;
	padding: 12px 14px;
}

.subscription-action-panel__cooling-off[b-5j3oyaed1a] {
	background: #ECFDF5;
	border-left: 3px solid #10B981;
	border-radius: 6px;
	padding: 12px 14px;
}

.subscription-action-panel__notice[b-5j3oyaed1a] {
	background: #FFFBEB;
	border-left: 3px solid #F59E0B;
	border-radius: 6px;
	padding: 12px 14px;
}

.subscription-action-panel__fee[b-5j3oyaed1a] {
	background: #FFF7ED;
	border-left: 3px solid #F97316;
	border-radius: 6px;
	padding: 12px 14px;
}

.subscription-action-panel__instructions p[b-5j3oyaed1a],
.subscription-action-panel__cooling-off p[b-5j3oyaed1a],
.subscription-action-panel__notice p[b-5j3oyaed1a],
.subscription-action-panel__fee p[b-5j3oyaed1a] {
	margin: 6px 0 0;
	font-size: 13px;
	line-height: 1.5;
}
/* /Components/Panels/UpdateOpportunityPanel.razor.rz.scp.css */
[b-6syltkdn4e] .fluent-input-label {
    font-weight: 600;
}
/* /Components/Panels/ViewStockMovementPanel.razor.rz.scp.css */
.view-panel-details[b-4tvvdt4f7j] {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-bottom: 20px;

    .detail-row {
        display: grid;
        grid-template-columns: 110px 1fr;
        gap: 8px;
        align-items: baseline;

        .label {
            font-weight: 600;
            color: var(--neutral-foreground-rest);
            font-size: 0.85em;
            text-transform: uppercase;
            letter-spacing: 0.04em;
        }

        .value[b-4tvvdt4f7j] {
            color: var(--neutral-foreground-rest);
        }
    }
}

.view-panel-section-title[b-4tvvdt4f7j] {
    font-weight: 600;
    font-size: 0.9em;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--neutral-foreground-rest);
    margin-bottom: 8px;
    padding-bottom: 4px;
    border-bottom: 1px solid var(--neutral-stroke-rest);
}
/* /Components/Panels/WebcamPanel.razor.rz.scp.css */
.videoFrame[b-2q1635wbvu]{
	aspect-ratio: var(--video-aspect-ratio);
	width: 100%;
	background-color: #ccc;
	padding: 0;
	margin: 0;
	pointer-events: none;
}

.videoFrame-shown[b-2q1635wbvu]{display: block;}
.videoFrame-hidden[b-2q1635wbvu]{display: none;}

.picture-tip[b-2q1635wbvu]{
	padding: 15px 20px;
	border-radius: 10px;
	background-color: #ebf5d7;
	display: grid;
	grid-template-columns: 100px auto;
	align-items: center;
	
	font-size: 10pt;
	
	p{
		padding: 0;
		margin: 0;
	}
}
/* /Components/Popups/ProfilePopup.razor.rz.scp.css */
.profilePopup[b-qs2gecljvt] {
    border: 3px solid #fff;
    position: absolute;
    top: 50px;
    left: 10px;
    z-index: 1;
    background-color: #ccc;
    width: 400px;
    height: 300px;
    border-radius: 10px;
    border-top-left-radius: 35px;
    padding: 20px;
    box-shadow: rgba(0,0,0,0.4) 10px 10px 10px;
}
/* /Components/Popups/SearchPopup.razor.rz.scp.css */
.searchBar[b-sfbmd140ie] {
	-webkit-app-region: no-drag;
	background-color: #fff;
	border-radius: 8px;
	padding: 0 12px;
	max-width: 500px;
	width: 100%;
	min-width: 0;
	display: flex;
	align-items: center;
	height: 32px;

	input {
		padding: 4px 0;
		border: none;
		flex: 1 1;
		min-width: 0;
		outline: none;
		background-color: #fff;
		font-size: 16px;
		line-height: 1.2;
	}

	@media screen and (min-width: 1000px) {
		border-radius: 5px;
		padding: 0 10px;
		height: 35px;

		input[b-sfbmd140ie] {
			padding: 4px;
			font-size: inherit;
		}
	}
}

.search-result-container[b-sfbmd140ie]{
	div.search-result{
		display: grid;
		grid-template-columns: 55px auto 40px;
		align-items: center;
		text-decoration: none;
		margin: 5px 0;
		color: #000;
		cursor: pointer;
		padding: 5px;
		border-radius: 5px;
		
		div.age{
			text-align: right;
		}
		
		&:hover[b-sfbmd140ie]{
			background-color: #eee;
		}
	}
	
	.selected[b-sfbmd140ie]{
		background-color: #eee;
	}
}
/* /Components/Popups/UserAlertsPopup.razor.rz.scp.css */
span.muted[b-z5uepn3arv]{
	color: #666;
}

div.alert-container[b-z5uepn3arv]{
	
	div.alert-list{
		max-height: 50vh;
		overflow-y: auto;
		margin-bottom: 20px;

		a.alert-row{
			display: grid;
			grid-template-columns: 30px auto;
			--veleo-icon-size: 20px;
			--veleo-icon-color: #999;
			gap: 0 0;
			border-bottom: 1px dashed #ddd;
			padding: 10px 5px;
			text-decoration: none;

			span.alert-message{
				color: #666;
				font-size: 10pt;
				display: block;
				margin: 0;
				padding: 0;
				line-height: 1.2;
			}

			span.alert-title[b-z5uepn3arv]{
				font-weight: 600;
				line-height: 1;
				display: block;
				color: #222;
				font-size: 10pt;
			}

			.alert-icon[b-z5uepn3arv]{
				grid-column: 1;
				grid-row: 1;
			}

			.alert-content[b-z5uepn3arv]{
				grid-column: 2;
				grid-row: 1;
			}

			&:hover[b-z5uepn3arv]{
				background-color: #eee;
			}
		}
	}
}

/* /Components/Shared/Avatar.razor.rz.scp.css */
.avatar-container[b-4ue3rkubuw] {
	/*display: flex;*/
	/*align-items: center;*/
	/*gap: 10px;*/
	/*min-width: 36px;*/

	display: grid;
	grid-template-columns: 44px 1fr;
	grid-template-rows: auto auto;
	align-items: center;
	gap: 0 10px;

	.avatar-container__image {
		/*width: 36px;*/
		/*height: 36px;*/
		/*background-color: #ABC;*/
		/*display: flex;*/
		/*align-items: center;*/
		/*justify-content: center;*/
		/*font-weight: bold;*/
		/*color: #FFF;*/

		grid-row: 1 / 3;
		grid-column: 1 / 2;
		width: 36px;
		height: 36px;
		background-color: #ABC;
		display: flex;
		align-items: center;
		justify-content: center;
		font-weight: bold;
		color: #fff;
		position: relative;
	}

	.presence-available[b-4ue3rkubuw]::before {
		content: "";
		width: 10px;
		height: 10px;
		background-color: #008000;
		border-radius: 50%;
		position: absolute;
		right: 0;
		bottom: 0;
		border: 2px solid #fff;
	}

	.presence-not-available[b-4ue3rkubuw]::before {
		content: "";
		width: 10px;
		height: 10px;
		background-color: darkred;
		border-radius: 50%;
		position: absolute;
		right: 0;
		bottom: 0;
		border: 2px solid #fff;
	}

	.avatar-container__name[b-4ue3rkubuw] {
		grid-row: 1 / 1;
		grid-column: 2 / 2;
		height: 100%;
		align-items: end;
	}
	
	.no-info[b-4ue3rkubuw]{
		grid-row: 1 / -1;
		align-content: center;
	}

	.avatar-container__info[b-4ue3rkubuw] {
		grid-row: 2 / 2;
		grid-column: 2 / 2;
		font-size: 9pt;
		color: #999;

		display: flex;
		gap: 0 15px;

		height: 100%;
		align-items: start;
	}
}
.avatar-link[b-4ue3rkubuw] {
	display: block;
	color: inherit;
	text-decoration: none;
	cursor: pointer;
}

.avatar-link:hover .avatar-container__name[b-4ue3rkubuw] {
	text-decoration: underline;
}
/* /Components/Shared/Button.razor.rz.scp.css */
.button[b-ddp2zdksla]{--_button-bg-color: red;--_button-text-color: white;--_button-bg-color-hover: white;--_button-text-color-hover: green;--_button-border-color: #888;--_text-display: inline-block;display:flex;align-items:center;justify-content:center;text-transform:uppercase;font-weight:600;padding:8px 14px;border-color:var(--_button-border-color);color:var(--_button-text-color);background-color:var(--_button-bg-color);border-radius:5px;gap:10px;font-size:9pt;transition:background-color ease-in-out .1s;margin:0 3px}.button i[b-ddp2zdksla]{font-size:15pt;font-weight:600}.button:disabled[b-ddp2zdksla]{background-color:#bbb;color:#fff;opacity:.5}.button:hover:not(:disabled)[b-ddp2zdksla]{background-color:var(--_button-bg-color-hover);color:var(--_button-text-color-hover)}.button-icon-only-mobile span[b-ddp2zdksla]{display:none}@media screen and (min-width: 800px){.button-icon-only-mobile span[b-ddp2zdksla]{display:inline-block}}.grid-button[b-ddp2zdksla]{display:inline-flex;height:100%;justify-content:center;align-items:center;padding:0 10px;border:none;border-radius:5px;background-color:rgba(0,0,0,0);color:var(--_button-text-color);transition:all ease-in-out .025s;font-size:14pt;gap:5px}.grid-button span[b-ddp2zdksla]{font-size:10pt;color:gray}.grid-button:hover:not(:disabled)[b-ddp2zdksla]{background-color:var(--_button-bg-color-hover)}.grid-button.active[b-ddp2zdksla]{background-color:var(--color-brand-accent);color:#fff}.toolbar-button[b-ddp2zdksla]{display:inline-flex;align-items:center;justify-content:center;text-transform:uppercase;border:none;border-radius:15px;font-weight:800;font-size:9pt;gap:8px;padding:8px 16px;background-color:var(--_button-bg-color);color:var(--_button-text-color);margin-left:5px;transition:all ease-in-out .2s}.toolbar-button i[b-ddp2zdksla]{font-size:12pt;font-weight:600}.toolbar-button:hover[b-ddp2zdksla]{background-color:var(--_button-bg-color-hover)}.toolbar-button:disabled[b-ddp2zdksla]{color:#ccc;background-color:#eaeaea}.inline-button[b-ddp2zdksla]{display:inline-flex;align-items:center;gap:8px;background:rgba(0,0,0,0);border:none;padding:4px 0;font-size:13px;font-weight:500;color:var(--_button-text-color);cursor:pointer;transition:color .1s;margin:0;text-transform:none}.inline-button i[b-ddp2zdksla]{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;background:var(--_button-text-color);border-radius:50%;color:#fff;font-size:14px;line-height:1;flex-shrink:0;transition:background .1s}.inline-button:hover:not(:disabled)[b-ddp2zdksla]{color:var(--_button-text-color-hover)}.inline-button:hover:not(:disabled) i[b-ddp2zdksla]{background:var(--_button-text-color-hover)}.inline-button:disabled[b-ddp2zdksla]{opacity:.4;cursor:not-allowed}.dotted-button[b-ddp2zdksla]{display:inline-flex;align-items:center;gap:7px;background:var(--_button-bg-color);border:1.5px dashed var(--_button-border-color);border-radius:8px;padding:8px 20px;font-size:13px;font-weight:500;color:var(--_button-text-color);cursor:pointer;transition:border-color .15s,color .15s,background .15s;text-transform:none}.dotted-button i[b-ddp2zdksla]{font-size:14px}.dotted-button:hover:not(:disabled)[b-ddp2zdksla]{border-color:var(--_button-text-color-hover);color:var(--_button-text-color-hover);background-color:var(--_button-bg-color-hover)}.dotted-button:disabled[b-ddp2zdksla]{opacity:.4;cursor:not-allowed}.prominent-button[b-ddp2zdksla]{display:inline-flex;align-items:center;justify-content:center;text-transform:none;font-weight:var(--font-weight-semibold);font-size:14px;padding:12px 32px;border:none;border-radius:8px;gap:10px;margin:0;background-color:var(--_button-bg-color);color:var(--_button-text-color);transition:background-color ease-in-out .1s}.prominent-button:hover:not(:disabled)[b-ddp2zdksla]{background-color:var(--_button-bg-color-hover);color:var(--_button-text-color-hover)}.prominent-button:disabled[b-ddp2zdksla]{opacity:.5}
/* /Components/Shared/ConfigEmptyState.razor.rz.scp.css */
.config-empty-state[b-c3nzybrva5]{
	border-radius: var(--style-border-radius);
	height: 250px; 
	background-color: #ffffffCC; 
	text-align: center; 
	align-content: center;
	
	h3{
		color: #789abc;
		font-weight: var(--font-weight-semibold);
		font-size: 13pt;
	}
	
	span[b-c3nzybrva5]{
		display: block;
		color: #888;
	}
	
	.btn[b-c3nzybrva5] {
		display: inline-block;
		margin-top: 20px;
		text-decoration: none;
		cursor: pointer;
		color: #789abc;
		font-weight: var(--font-weight-semibold);
		font-size: 10pt;
		padding: 3px 12px;
		background-color: #fff;
		border-radius: 10px;
		
		transition: all ease-in-out 0.2s;
		
		&:hover{
			background-color: var(--color-button-primary);
			color: #fff;
		}
	}
}
/* /Components/Shared/CourseDetailCard.razor.rz.scp.css */
/* Ported from Veleo.Consumer.Shared CourseDetailCard — no-image-header interactive variant */
.course-detail-card[b-mhy91p3j66] {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	align-self: stretch;
	border-radius: 12px;
	border: 1px solid #efefef;
	background: #fff;
	box-shadow: 1px -1px 8px 2px rgba(90, 97, 128, 0.08);
	transition: box-shadow 0.2s ease;
	overflow: hidden;
	position: relative;
	cursor: pointer;
	touch-action: manipulation;
	-webkit-tap-highlight-color: transparent;
	width: 100%;
	text-align: left;
	font: inherit;
	color: inherit;
	padding: 0;
	margin: 0;
}

.course-detail-card:not(.course-detail-card--check-list):not(.course-detail-card--plan):hover[b-mhy91p3j66] {
	box-shadow: -1px 0 10px 2px rgba(58, 75, 148, 0.06), 2px -2px 10px 3px rgba(90, 97, 128, 0.12);
}

.course-detail-card--selected[b-mhy91p3j66] {
	border-color: var(--color-brand-accent, #036ac4);
	box-shadow: 0 0 0 1px var(--color-brand-accent, #036ac4);
}

.course-detail-card:disabled[b-mhy91p3j66],
.course-detail-card--disabled[b-mhy91p3j66] {
	opacity: 0.55;
	cursor: not-allowed;
	pointer-events: none;
}

.course-detail-card__title-container[b-mhy91p3j66] {
	display: flex;
	padding: 12px 16px 32px 16px;
	align-items: center;
	align-self: stretch;
	gap: 8px;
	background: var(--course-detail-card-header-bg, var(--color-module-settings, #437390));
	position: relative;
}

.course-detail-card__title-container--with-trailing[b-mhy91p3j66] {
	padding-right: 52px;
}

.course-detail-card__title-text[b-mhy91p3j66] {
	flex: 1;
	min-width: 0;
	color: #fff;
	font-size: var(--font-size-medium);
	font-weight: var(--font-weight-semibold);
	line-height: 22px;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.course-detail-card__header-trailing[b-mhy91p3j66] {
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: 8px;
	border: 1.5px solid #fff;
	background: var(--color-status-success-600, #388e3c);
	flex-shrink: 0;
	position: absolute;
	top: 50%;
	right: 8px;
	transform: translateY(calc(-50% - 8px));
	min-width: 32px;
	height: 32px;
	padding: 0 8px;
}

.course-detail-card__header-trailing--tag[b-mhy91p3j66] {
	border: none;
	background: transparent;
	width: auto;
	height: auto;
	min-height: 32px;
}

.course-detail-card__header-trailing-text[b-mhy91p3j66] {
	color: #fff;
	font-size: var(--font-size-medium);
	font-weight: var(--font-weight-semibold);
	line-height: 22px;
}

.course-detail-card__content-container[b-mhy91p3j66] {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 8px;
	align-self: stretch;
	background: #fff;
	margin-top: -16px;
	position: relative;
	padding: 16px;
	flex: 1;
	min-height: 0;
	border-radius: 16px 0 0 0;
	min-height: 88px;
}

.course-detail-card--no-image-header .course-detail-card__content-container[b-mhy91p3j66]::before {
	content: '';
	position: absolute;
	top: -16px;
	right: 0;
	width: 16px;
	height: 16px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none'%3E%3Cpath d='M16 16H0C8.83655 16 16 8.83655 16 0V16Z' fill='%23FFFFFF'/%3E%3C/svg%3E");
	background-size: contain;
	background-repeat: no-repeat;
	background-position: top right;
	pointer-events: none;
}

.course-detail-card__description[b-mhy91p3j66] {
	color: #343646;
	font-size: var(--font-size-normal);
	font-style: normal;
	font-weight: var(--font-weight-light);
	line-height: 24px;
	align-self: stretch;
	margin: 0;
	flex: 1 1 auto;
	min-height: 0;
}

.course-detail-card__age[b-mhy91p3j66] {
	display: flex;
	align-items: center;
	gap: 4px;
	align-self: flex-start;
	margin-top: auto;
}

.course-detail-card__age-icon[b-mhy91p3j66] {
	color: var(--course-detail-card-header-bg, var(--color-module-settings, #437390));
	font-size: var(--font-size-medium);
	flex-shrink: 0;
}

.course-detail-card__age-text[b-mhy91p3j66] {
	color: #555;
	font-size: var(--font-size-normal);
	font-weight: var(--font-weight-medium);
	line-height: 19px;
}

.course-detail-card__extra[b-mhy91p3j66] {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	align-self: stretch;
	margin-top: auto;
}

.course-detail-card__content-container[b-mhy91p3j66]  .arrow-right-button {
	background: var(--course-detail-card-header-bg, var(--course-accent-color, var(--color-module-settings, #437390)));
}

/* Check-list variant */
.course-detail-card--check-list[b-mhy91p3j66] {
	cursor: pointer;
}

.course-detail-card--check-list .course-detail-card__content-container[b-mhy91p3j66] {
	display: flex;
	padding: 12px 16px 48px;
	flex-direction: column;
	justify-content: center;
	align-items: stretch;
	align-self: stretch;
	border-radius: 16px 0 0 0;
	background: #fff;
	margin-top: -16px;
	position: relative;
	min-height: 88px;
}

.course-detail-card--check-list .course-detail-card__content-container[b-mhy91p3j66]::before {
	content: '';
	position: absolute;
	top: -16px;
	right: 0;
	width: 16px;
	height: 16px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none'%3E%3Cpath d='M16 16H0C8.83655 16 16 8.83655 16 0V16Z' fill='%23FFFFFF'/%3E%3C/svg%3E");
	background-size: contain;
	background-repeat: no-repeat;
	background-position: top right;
	pointer-events: none;
}

.course-detail-card__content-container--check-list[b-mhy91p3j66] {
	gap: 0;
	align-items: stretch;
}

.course-detail-card__detail-item[b-mhy91p3j66] {
	display: flex;
	padding: 8px 0;
	align-items: flex-start;
	gap: 8px;
	align-self: stretch;
	border-bottom: 1px solid #efefef;
}

.course-detail-card__detail-item:first-child[b-mhy91p3j66] {
	padding-top: 0;
}

.course-detail-card__detail-item:last-child[b-mhy91p3j66] {
	border-bottom: none;
	padding-bottom: 0;
}

.course-detail-card__detail-check[b-mhy91p3j66] {
	width: 24px;
	height: 24px;
	flex-shrink: 0;
	display: inline-flex;
	justify-content: center;
	align-items: center;
	color: var(--course-detail-card-header-bg, var(--color-module-settings, #437390));
	font-size: 20px;
}

.course-detail-card__detail-item .course-detail-card__description[b-mhy91p3j66] {
	color: #343646;
	font-size: var(--font-size-normal);
	font-style: normal;
	font-weight: var(--font-weight-light);
	line-height: 24px;
	flex: 1;
	min-height: 0;
}

.course-detail-card__free-trial-ribbon[b-mhy91p3j66] {
	position: absolute;
	top: 0;
	right: 0;
	padding: 4px 12px;
	border-radius: 0 12px 0 8px;
	background: #388e3c;
	color: #fff;
	font-size: var(--font-size-small);
	font-weight: var(--font-weight-medium);
	line-height: 16px;
	z-index: 2;
}

.course-detail-card__free-trial-ribbon--image[b-mhy91p3j66] {
	border-radius: 0 0 0 8px;
}

.course-detail-card__image-header[b-mhy91p3j66] {
	height: 120px;
	align-self: stretch;
	position: relative;
	overflow: hidden;
}

.course-detail-card__header-photo[b-mhy91p3j66] {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.course-detail-card__image-header-tag[b-mhy91p3j66] {
	position: absolute;
	top: 12px;
	right: 16px;
	z-index: 2;
}

.course-detail-card__overlay[b-mhy91p3j66] {
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 1;
	display: flex;
	padding: 4px 12px;
	justify-content: center;
	align-items: center;
	gap: 4px;
	border-radius: 8px 8px 0 0;
	background: var(--course-detail-card-header-bg, var(--color-module-settings, #437390));
	max-width: calc(100% - 16px);
}

.course-detail-card__overlay-decoration[b-mhy91p3j66] {
	position: absolute;
	bottom: 0;
	right: -8px;
	width: 8px;
	height: 8px;
	pointer-events: none;
}

.course-detail-card__overlay-text[b-mhy91p3j66] {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
	overflow: hidden;
	color: #fff;
	text-overflow: ellipsis;
	font-size: var(--font-size-large);
	font-style: normal;
	font-weight: var(--font-weight-medium);
	line-height: 24px;
}

.course-detail-card__content-container--image-header[b-mhy91p3j66] {
	margin-top: 0;
	border-radius: 0 var(--border-radius-m, 16px) 0 0;
}

.course-detail-card:not(.course-detail-card--plan) .course-detail-card__content-container--image-header[b-mhy91p3j66]::before {
	display: none;
}

.course-detail-card--plan .course-detail-card__content-container--plan.course-detail-card__content-container--image-header[b-mhy91p3j66] {
	margin-top: 0;
	border-radius: 0 var(--border-radius-m, 16px) 0 0;
}

.course-detail-card--plan .course-detail-card__content-container--image-header[b-mhy91p3j66]::before {
	display: block;
	top: 0;
	right: 0;
	width: 16px;
	height: 16px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none'%3E%3Cpath d='M16 16H0C8.83655 16 16 8.83655 16 0V16Z' fill='%23FFFFFF'/%3E%3C/svg%3E");
	background-size: contain;
	background-repeat: no-repeat;
	background-position: top right;
	pointer-events: none;
}

.course-detail-card--plan .course-detail-card__content-container--image-header[b-mhy91p3j66] {
	margin-top: 0;
}

/* Plan card variant — ported from consumer course-detail-card--plan */
.course-detail-card--plan[b-mhy91p3j66] {
	cursor: default;
	flex-shrink: 0;
	height: auto;
	align-items: stretch;
}

.course-detail-card--plan-current[b-mhy91p3j66] {
	border-color: var(--course-detail-card-current-border, var(--course-accent-color, #437390));
	box-shadow: -1px 0 10px 2px rgba(58, 75, 148, 0.06), 2px -2px 10px 3px rgba(90, 97, 128, 0.12);
}

.course-detail-card--plan .course-detail-card__content-container[b-mhy91p3j66] {
	display: flex;
	flex-direction: column;
	padding: 12px 16px 16px;
	gap: 16px;
	flex: 1 1 auto;
	min-height: 0;
	align-items: stretch;
	align-self: stretch;
	margin-top: -16px;
	position: relative;
	border-radius: 16px 0 0 0;
	background: #fff;
}

.course-detail-card--plan .course-detail-card__content-container[b-mhy91p3j66]::before {
	content: '';
	position: absolute;
	top: -16px;
	right: 0;
	width: 16px;
	height: 16px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none'%3E%3Cpath d='M16 16H0C8.83655 16 16 8.83655 16 0V16Z' fill='%23FFFFFF'/%3E%3C/svg%3E");
	background-size: contain;
	background-repeat: no-repeat;
	background-position: top right;
	pointer-events: none;
}

.course-detail-card__plan-price-row[b-mhy91p3j66] {
	display: flex;
	flex-direction: column;
	align-items: center;
	align-self: stretch;
	gap: 4px;
}

.course-detail-card__plan-price-wrap[b-mhy91p3j66] {
	display: flex;
	justify-content: center;
	align-items: baseline;
	flex-wrap: wrap;
	gap: 4px;
	align-self: stretch;
}

.course-detail-card__plan-price[b-mhy91p3j66] {
	color: var(--course-accent-color, var(--course-detail-card-header-bg, #437390));
	font-size: 23px;
	font-style: normal;
	font-weight: var(--font-weight-medium);
	line-height: 32px;
}

.course-detail-card__plan-price-suffix[b-mhy91p3j66],
.course-detail-card__plan-joining-fee[b-mhy91p3j66] {
	color: #878fa9;
	font-size: var(--font-size-normal);
	font-style: normal;
	font-weight: var(--font-weight-light);
	line-height: 18px;
}

.course-detail-card__plan-joining-fee[b-mhy91p3j66] {
	text-align: center;
	align-self: stretch;
}

.course-detail-card__plan-frequency[b-mhy91p3j66] {
	color: #5a6180;
	font-size: var(--font-size-large);
	font-weight: var(--font-weight-medium);
	line-height: 24px;
	text-align: center;
	font-style: normal;
}

.course-detail-card__plan-body[b-mhy91p3j66] {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	align-self: stretch;
	gap: 12px;
	flex: 1 1 auto;
	min-height: 0;
}

.course-detail-card__plan-description[b-mhy91p3j66] {
	color: #343646;
	text-align: center;
	font-size: var(--font-size-normal);
	font-style: normal;
	font-weight: var(--font-weight-light);
	line-height: 18px;
	align-self: stretch;
	margin: 0;
}

.course-detail-card__plan-body:has(.course-detail-card__plan-inclusions) .course-detail-card__plan-description[b-mhy91p3j66] {
	border-bottom: 1px solid #efefef;
	padding-bottom: 16px;
}

.course-detail-card__plan-inclusions[b-mhy91p3j66],
.course-detail-card__plan-all-plans[b-mhy91p3j66] {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 8px;
	align-self: stretch;
}

.course-detail-card__plan-inclusions-list[b-mhy91p3j66] {
	display: flex;
	padding: 8px;
	flex-direction: column;
	align-items: flex-start;
	gap: 4px;
	align-self: stretch;
	border-radius: 8px;
	background: #fafafa;
}

.course-detail-card__plan-inclusions-title[b-mhy91p3j66],
.course-detail-card__plan-all-plans-title[b-mhy91p3j66] {
	font-size: var(--font-size-medium);
	font-weight: var(--font-weight-medium);
	color: #5a6180;
	font-style: normal;
	line-height: 24px;
}

.course-detail-card__plan-all-plans-header[b-mhy91p3j66] {
	display: flex;
	align-items: center;
	justify-content: space-between;
	align-self: stretch;
	gap: 8px;
	border: none;
	background: none;
	cursor: pointer;
	padding: 0;
	touch-action: manipulation;
	-webkit-tap-highlight-color: transparent;
}

.course-detail-card__plan-all-plans-header:hover:not(:disabled)[b-mhy91p3j66] {
	opacity: 0.85;
}

.course-detail-card__plan-all-plans-arrow[b-mhy91p3j66] {
	font-size: 20px;
	color: var(--course-accent-color, var(--course-detail-card-header-bg, #437390));
	flex-shrink: 0;
	transition: transform 0.2s ease;
	transform-origin: center;
}

.course-detail-card__plan-all-plans-arrow--expanded[b-mhy91p3j66] {
	transform: rotate(-90deg);
}

.course-detail-card__plan-footer-disclaimer[b-mhy91p3j66] {
	color: #878fa9;
	text-align: center;
	font-size: 10px;
	font-style: normal;
	font-weight: var(--font-weight-semibold);
	line-height: 12px;
	align-self: stretch;
	margin: 0;
}

.course-detail-card--plan .course-detail-card__plan-footer[b-mhy91p3j66] {
	display: flex;
	flex-direction: column;
	gap: 16px;
	align-self: stretch;
	flex: 0 0 auto;
	margin-top: auto;
	border-top: 1px solid #efefef;
	padding-top: 16px;
}

.course-detail-card--plan:has(.course-detail-card__plan-body) .course-detail-card__plan-footer[b-mhy91p3j66] {
	margin-top: auto;
}

.course-detail-card--plan .course-detail-card__plan-inclusions-list[b-mhy91p3j66] {
	overflow-y: auto;
}

.course-detail-card--plan .course-detail-card__detail-check[b-mhy91p3j66] {
	width: auto;
	height: auto;
	padding: 2px;
	font-size: 12px;
}

.course-detail-card--plan .course-detail-card__detail-check svg[b-mhy91p3j66] {
	width: 12px;
	height: 12px;
}

.course-detail-card--plan .course-detail-card__detail-item[b-mhy91p3j66] {
	align-items: flex-start;
	gap: 6px;
	border-bottom: none;
	padding: 0;
}

.course-detail-card--plan .course-detail-card__detail-item .course-detail-card__description[b-mhy91p3j66] {
	min-height: 0;
	font-size: var(--font-size-normal);
	line-height: 20px;
}

.course-detail-card__plan-cta[b-mhy91p3j66] {
	display: flex;
	align-items: center;
	justify-content: center;
	align-self: stretch;
	width: 100%;
	padding: 12px 16px;
	border: none;
	border-radius: 8px;
	background: var(--course-accent-color, var(--course-detail-card-header-bg, #437390));
	color: #fff;
	font-size: var(--font-size-normal);
	font-weight: var(--font-weight-medium);
	line-height: 20px;
	cursor: pointer;
	transition: opacity 0.2s ease;
}

.course-detail-card__plan-cta:hover:not(:disabled)[b-mhy91p3j66] {
	opacity: 0.85;
}

.course-detail-card__plan-cta:disabled[b-mhy91p3j66] {
	opacity: 0.5;
	cursor: not-allowed;
}

.course-detail-card__arrow-button[b-mhy91p3j66] {
	position: absolute;
	right: 0;
	bottom: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 32px;
	height: 30px;
	border: none;
	border-radius: 24px 0 0 0;
	background: var(--course-accent-color, var(--color-module-settings, #437390));
	color: #fff;
	transition: opacity 0.2s ease;
	z-index: 20;
	cursor: pointer;
	padding: 0;
	flex-shrink: 0;
	touch-action: manipulation;
	-webkit-tap-highlight-color: transparent;
}

.course-detail-card__arrow-button svg[b-mhy91p3j66] {
	width: 20px;
	height: 20px;
	flex-shrink: 0;
}

.course-detail-card__arrow-button:hover:not(:disabled)[b-mhy91p3j66] {
	opacity: 0.8;
}

.course-detail-card__arrow-button:active:not(:disabled)[b-mhy91p3j66] {
	opacity: 0.7;
}

.course-detail-card__arrow-button:focus-visible[b-mhy91p3j66] {
	outline: 2px solid var(--color-brand-accent, #036ac4);
	outline-offset: 2px;
}

.course-detail-card__arrow-button:disabled[b-mhy91p3j66] {
	cursor: not-allowed;
	border: none;
	background: #bdbdbd;
	color: #fff;
	opacity: 1;
}
/* /Components/Shared/DialogStatusHeader.razor.rz.scp.css */
.dialog-status-header[b-bpz49tc954] {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	--status-colour: var(--color-pos-accent);
}

.dialog-status-icon[b-bpz49tc954] {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 96px;
	height: 96px;
	border-radius: 50%;
	margin: 32px 0;
	background: var(--status-colour);
}

.dialog-status-header h3[b-bpz49tc954] {
	margin: 0;
	font-size: 18px;
	font-style: normal;
	font-weight: var(--font-weight-semibold);
	line-height: normal;
	text-align: center;
	color: var(--status-colour);
}

.dialog-status-header-subtitle[b-bpz49tc954] {
	margin: 0;
	font-size: 14px;
	font-style: normal;
	font-weight: var(--font-weight-light);
	line-height: normal;
	text-align: center;
	color: var(--color-surface-app);
}
/* /Components/Shared/EmptyState.razor.rz.scp.css */
div.empty-state[b-usz81x1khs]{
	/*border: calc(var(--stroke-width) * 1px) solid var(--neutral-stroke-layer-rest);*/
	/*border-radius: calc(var(--layer-corner-radius) * 1px);*/
	display: flex;
	justify-content: center;
	align-items: center;
	height: 250px;
	flex-direction: column;
	gap: 20px;
	/*background-color: #FFFFFF;*/
	
	i{
		font-size: 80px;
		color: #CCCCCC;
	}
	
	span[b-usz81x1khs]{
		font-size: 14pt;
		color: #888;	
	}
	
	p[b-usz81x1khs]{
		text-align: center;
		padding: 0 50px;
		color: #999;
	}
}
/* /Components/Shared/EnumIconSelector.razor.rz.scp.css */
/* Big Button Panel */
div.enum-select[b-or1l225kyp]{
	display: grid;
	grid-auto-flow: column;
	grid-auto-columns: minmax(max-content, 1fr);
	background: #EEE;
	border-radius: 10px;
	gap: 2px;
	--veleo-icon-size: 25px;
	color: var(--color-neutral-600);

	--active-color: var(--color-module-contacts);
	
	div.enum-select-item{
		display: flex;
		flex-direction: column;
		align-items: center;
		padding: 6px 10px;
		font-size: var(--font-size-small);
		gap: 5px;
		cursor: pointer;
		border-radius: 5px;
		transition: background-color 0.2s;

		&:hover{
			background: #DDD;
		}

		&.active[b-or1l225kyp]{
			background-color: var(--active-color);
			color: #FFF;
			font-weight: var(--font-weight-semibold);
		}
	}
}
/* /Components/Shared/EnumSelector.razor.rz.scp.css */
div.enum-button[b-jii76kns4t]{
	padding: 6px 18px;
	background-color: #FFF;
	cursor: pointer;
	transition: background-color .2s ease;
	border-radius: 5px;
	
	&:hover{
		background-color: #FAFAFA;
	}
	
	&.selected[b-jii76kns4t]{
		font-weight: bold;
		background-color: #EAEAEA;
	}
}
/* /Components/Shared/GlobalSectionHeader.razor.rz.scp.css */
.global-section-header-container[b-pveit1zdnc]{background-color:var(--color-surface-app);--veleo-icon-color: #ffffffaa;--veleo-icon-size: 22pt}@media screen and (min-width: 1500px){.global-section-header-container[b-pveit1zdnc]{--veleo-icon-size: 32pt}}.global-section-header-container .global-section-header[b-pveit1zdnc]{display:grid;color:#fff;padding:12px;align-items:center;grid-template-columns:40px minmax(0, 1fr) auto;grid-template-rows:auto;position:-webkit-sticky;position:sticky;top:50px}.global-section-header-container .global-section-header .text[b-pveit1zdnc]{min-width:0}@media screen and (min-width: 800px){.global-section-header-container .global-section-header[b-pveit1zdnc]{padding:10px 15px;gap:15px;grid-template-columns:max-content auto auto;grid-template-rows:auto}}@media screen and (min-width: 1500px){.global-section-header-container .global-section-header[b-pveit1zdnc]{padding:15px 20px;border-top-left-radius:var(--style-border-radius)}}.global-section-header-container .global-section-header h1.title[b-pveit1zdnc]{margin:0;padding:0;font-weight:--font-weight-semibold;font-size:18px;line-height:1.1}@media screen and (min-width: 800px){.global-section-header-container .global-section-header h1.title[b-pveit1zdnc]{font-size:21px}}@media screen and (min-width: 1500px){.global-section-header-container .global-section-header h1.title[b-pveit1zdnc]{font-size:24px}}.global-section-header-container .global-section-header span.subtitle[b-pveit1zdnc]{display:none;font-size:13px;margin:0;padding:0;color:rgba(255,255,255,.8);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media screen and (min-width: 800px){.global-section-header-container .global-section-header span.subtitle[b-pveit1zdnc]{display:block}}@media screen and (min-width: 1500px){.global-section-header-container .global-section-header span.subtitle[b-pveit1zdnc]{font-size:14px}}.global-section-header-container .global-section-header .controls[b-pveit1zdnc]{display:flex;flex:1 1;justify-content:flex-end;grid-column-start:3;grid-column-end:4}@media screen and (min-width: 800px){.global-section-header-container .global-section-header .controls[b-pveit1zdnc]{justify-content:flex-end;grid-column-start:3;grid-column-end:4;border-top:none;padding-top:0}}
/* /Components/Shared/HangingPageHeader.razor.rz.scp.css */
div.hanging-page-header[b-tekoujhndv]{--veleo-icon-size: 30pt;--veleo-icon-color: var(--color-module-settings-pale);background-color:var(--color-module-settings-light);border-bottom-left-radius:var(--style-border-radius);border-bottom-right-radius:var(--style-border-radius);margin-bottom:20px;position:relative}div.hanging-page-header div.breadcrumb-section[b-tekoujhndv]{display:flex;flex-direction:row;--tint-percentage: 10%}div.hanging-page-header div.breadcrumb-section a.breadcrumb-item[b-tekoujhndv]{--background-color: color-mix(in hsl, var(--color-module-settings-light), black var(--tint-percentage));background-color:var(--background-color);width:max-content;padding:10px 20px 10px 14px;border-bottom-right-radius:20px;display:grid;grid-template-columns:25px auto;align-items:center;transition:background-color .2s;text-decoration:none;cursor:default;pointer-events:none}div.hanging-page-header div.breadcrumb-section a.breadcrumb-item span.label[b-tekoujhndv]{font-size:10pt;font-weight:normal;color:rgba(255,255,255,.8)}div.hanging-page-header div.breadcrumb-section a.breadcrumb-item.hanging[b-tekoujhndv]{margin-left:-20px}div.hanging-page-header div.breadcrumb-section a.breadcrumb-item.clickable[b-tekoujhndv]{cursor:pointer;pointer-events:all}div.hanging-page-header div.breadcrumb-section a.breadcrumb-item.clickable:hover[b-tekoujhndv]{background-color:color-mix(in hsl, var(--background-color), black 10%)}div.hanging-page-header div.top-section[b-tekoujhndv]{padding:10px 20px;display:flex;gap:20px}div.hanging-page-header div.top-section div.text-container span.mobile[b-tekoujhndv],div.hanging-page-header div.top-section div.text-container span.desktop[b-tekoujhndv]{display:none}@media screen and (min-width: 800px){div.hanging-page-header div.top-section div.text-container span.desktop[b-tekoujhndv]{display:block}}div.hanging-page-header div.top-section div.icon-container[b-tekoujhndv]{overflow:hidden;display:none;align-items:center;justify-content:flex-end;text-align:right;flex-grow:1;width:min-content}@media screen and (min-width: 800px){div.hanging-page-header div.top-section div.icon-container[b-tekoujhndv]{display:flex}}@media screen and (min-width: 800px){div.hanging-page-header div.top-section[b-tekoujhndv]{padding:10px 25px;--veleo-icon-size: 30pt}}@media screen and (min-width: 1000px){div.hanging-page-header div.top-section[b-tekoujhndv]{padding:20px 35px;--veleo-icon-size: 45pt}}@media screen and (min-width: 1500px){div.hanging-page-header div.top-section[b-tekoujhndv]{--veleo-icon-size: 50pt}}div.hanging-page-header button.collapse-toggle[b-tekoujhndv]{display:none;position:absolute;top:10px;right:12px;background:rgba(0,0,0,0);border:none;cursor:pointer;opacity:.6;padding:4px;transition:opacity .2s}div.hanging-page-header button.collapse-toggle:hover[b-tekoujhndv]{opacity:1}@media screen and (min-width: 800px){div.hanging-page-header button.collapse-toggle[b-tekoujhndv]{display:block}}div.hanging-page-header div.tab-section[b-tekoujhndv]{padding:0 20px 10px 20px;display:flex;gap:5px}div.hanging-page-header div.tab-section[b-tekoujhndv]  a{text-decoration:none;color:#fff;display:inline-block;padding:8px 13px;background-color:rgba(255,255,255,.0352941176);border-radius:var(--style-border-radius);font-weight:600;font-size:11pt;transition:background-color .2s}div.hanging-page-header div.tab-section[b-tekoujhndv]  a:hover{background-color:rgba(255,255,255,.2)}div.hanging-page-header div.tab-section[b-tekoujhndv]  a.active{background-color:rgba(255,255,255,.2)}@media screen and (min-width: 1000px){div.hanging-page-header__slim div.top-section[b-tekoujhndv]{padding:25px 35px}}div.hanging-page-header.is-collapsed div.top-section[b-tekoujhndv]{padding:8px 50px 8px 20px}@media screen and (min-width: 800px){div.hanging-page-header.is-collapsed div.top-section[b-tekoujhndv]{padding:10px 50px 10px 25px}}@media screen and (min-width: 1000px){div.hanging-page-header.is-collapsed div.top-section[b-tekoujhndv]{padding:10px 50px 10px 35px}}div.hanging-page-header.is-collapsed h2[b-tekoujhndv]{font-size:11pt}@media screen and (min-width: 800px){div.hanging-page-header.is-collapsed h2[b-tekoujhndv]{font-size:15px;line-height:18px}}div.hanging-page-header.is-collapsed.has-sub-nav[b-tekoujhndv]{padding-bottom:0}div.hanging-page-header h2[b-tekoujhndv]{font-weight:var(--font-weight-medium);color:#fff;margin:0;font-size:14pt}@media screen and (min-width: 800px){div.hanging-page-header h2[b-tekoujhndv]{font-size:22px;line-height:28px}}div.hanging-page-header span[b-tekoujhndv]{font-size:14px;line-height:20px;display:block;color:var(--color-module-settings-pale);flex:1 1}@media screen and (min-width: 800px){div.hanging-page-header span[b-tekoujhndv]{max-width:475px}}@media screen and (min-width: 1000px){div.hanging-page-header span[b-tekoujhndv]{max-width:650px}}@media screen and (min-width: 1500px){div.hanging-page-header span[b-tekoujhndv]{max-width:900px}}div.hanging-page-header div.button-column[b-tekoujhndv]{display:flex;align-items:flex-end;justify-content:flex-end;flex:1}div.sub-navigation[b-tekoujhndv]{background-color:color-mix(in hsl, var(--color-module-settings-light), black 9%);margin-top:-40px;border-bottom-left-radius:var(--style-border-radius);border-bottom-right-radius:var(--style-border-radius);padding:35px 23px 15px 23px;color:#fff;margin-bottom:20px;display:flex;gap:8px}div.sub-navigation[b-tekoujhndv]  a{flex-shrink:0;display:block;break-inside:avoid;color:#fff;text-decoration:none;border-radius:var(--style-border-radius);padding:3px 12px;transition:background-color .2s}div.sub-navigation[b-tekoujhndv]  a:hover{background-color:rgba(255,255,255,.2)}div.sub-navigation[b-tekoujhndv]  a.active{background-color:rgba(255,255,255,.9333333333);color:var(--color-module-settings-light);font-weight:var(--font-weight-semibold)}
/* /Components/Shared/HeadingWithIcon.razor.rz.scp.css */
/*
 * Nothing here declares a size, a weight or a spacing value. Every one resolves through the type
 * scale in Styles/VariablesAndMixins/_typography.scss - this component used to size in points, which
 * is where 13.33px and 14.67px headings came from.
 */

.HeadingWithIcon[b-8ib73tpxw3]{
    display: flex; 
    column-gap: 10px;
    align-items: center;
	min-width: 0;
}

.HeadingWithIcon:has(.HeadingWithIcon-text)[b-8ib73tpxw3] {
	align-items: flex-start;
}

.HeadingWithIcon-text[b-8ib73tpxw3] {
	display: flex;
	flex-direction: column;
	min-width: 0;
	gap: 2px;
}

.HeadingWithIcon__text[b-8ib73tpxw3] {
	font-weight: var(--font-weight-medium);
	line-height: var(--line-height-tight);
	min-width: 0;
}

.HeadingWithIcon__text--bold[b-8ib73tpxw3] {
	font-weight: var(--font-weight-semibold);
}

.HeadingWithIcon__text--caps[b-8ib73tpxw3] {
	text-transform: uppercase;
	letter-spacing: var(--letter-spacing-caps);
}

.Size-Smallest[b-8ib73tpxw3] {
	font-size: var(--font-size-small);
}

.Size-Small[b-8ib73tpxw3] {
	font-size: var(--font-size-normal);
}

.Size-Medium[b-8ib73tpxw3] {
	font-size: var(--font-size-medium);
}

.Size-Large[b-8ib73tpxw3] {
	font-size: var(--font-size-large);
}
/* /Components/Shared/Icon.razor.rz.scp.css */
i.veleo-icon[b-ujmz8mzdhd]{
    font-weight: 800;
    font-size: var(--veleo-icon-size);
    color: var(--veleo-icon-color);
	transition: color ease-in-out 0.2s;
}

i.veleo-icon__clickable[b-ujmz8mzdhd]{
    cursor: pointer;
}

i.veleo-icon__clickable:hover[b-ujmz8mzdhd]{
    color: var(--veleo-icon-color-hover);
}
/* /Components/Shared/IconButton.razor.rz.scp.css */
button[b-9wmu1cm0vi]{
    border: none;
    background-color: transparent;
    color: var(--icon-color);
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0.8;

	&:disabled{
		opacity: 0.5;
	}
}

button:hover:not(:disabled)[b-9wmu1cm0vi] {
    color: var(--icon-color-hover);
    opacity: 1;
}
/* /Components/Shared/InlineEmptyState.razor.rz.scp.css */
div.empty-state[b-gskacgehaf]{
	padding: 20px;
	display: flex;
	justify-content: center;
	align-items: center;
	
	flex-direction: column;
	gap: 10px;
	
	i{
		font-size: 40px;
		color: #CCC;
	}

	span[b-gskacgehaf]{
		font-size: 12pt;
		color: #888;
	}

	p[b-gskacgehaf]{
		text-align: center;
		padding: 0 50px;
		color: #999;
	}
}
/* /Components/Shared/LocationMap.razor.rz.scp.css */
.location-map[b-erg0wutgpw] {
	margin-top: 12px;
}

.location-map__canvas[b-erg0wutgpw] {
	width: 100%;
	border-radius: var(--style-border-radius);
	overflow: hidden;
	background-color: var(--color-neutral-100);
	position: relative;
}

.location-map__placeholder[b-erg0wutgpw] {
	position: absolute;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--color-neutral-400);
	font-size: 9pt;
}

.location-map__legend[b-erg0wutgpw] {
	display: flex;
	flex-wrap: wrap;
	gap: 16px;
	margin-top: 8px;
	font-size: 9pt;
	color: var(--color-neutral-600);
}

.location-map__legend-item[b-erg0wutgpw] {
	display: inline-flex;
	align-items: center;
	gap: 6px;
}

.location-map__legend-swatch[b-erg0wutgpw] {
	width: 10px;
	height: 10px;
	border-radius: 50%;
	flex: 0 0 auto;
}

/* Mapbox builds its own DOM inside the canvas element, so its pieces need ::deep to be reached. */

[b-erg0wutgpw] .mapboxgl-popup-content {
	border-radius: var(--style-border-radius);
	padding: 8px 12px;
	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.15);
	font-family: inherit;
}

[b-erg0wutgpw] .location-map__popup-title {
	font-weight: 600;
	color: var(--color-neutral-900);
	font-size: 9.5pt;
}

[b-erg0wutgpw] .location-map__popup-subtitle {
	color: var(--color-neutral-600);
	font-size: 8.5pt;
	margin-top: 2px;
}

/* Attribution is a Mapbox terms requirement, but it does not need to shout on a 220px map. */
[b-erg0wutgpw] .mapboxgl-ctrl-attrib {
	font-size: 7.5pt;
}
/* /Components/Shared/ModuleEmptyState.razor.rz.scp.css */
.module-empty-state[b-ht6yuowxa6] {
	display: flex;
	flex: 1;
	min-height: 12rem;
	align-items: center;
	justify-content: center;
	background: var(--color-pos-surface-muted);
	border-radius: 12px;
}

.module-empty-state__content[b-ht6yuowxa6] {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 32px;
	text-align: center;
}

.module-empty-state__text[b-ht6yuowxa6] {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 8px;
}

.module-empty-state__message[b-ht6yuowxa6] {
	margin: 0;
	font-size: var(--font-size-xlarge);
	font-weight: var(--font-weight-semibold);
	line-height: normal;
	text-align: center;
	color: var(--color-pos-text-secondary);
}

.module-empty-state__hint[b-ht6yuowxa6] {
	font-size: var(--font-size-small);
	line-height: normal;
	color: var(--color-pos-text-muted);
}
/* /Components/Shared/NumericKeypad.razor.rz.scp.css */
.numpad-wrapper[b-h3cxgyytrz] {
	position: relative;
}

.numpad-focus-sink[b-h3cxgyytrz] {
	position: absolute;
	width: 0;
	height: 0;
	padding: 0;
	margin: 0;
	border: 0;
	opacity: 0;
	pointer-events: none;
	outline: none;

	&:focus,
	&:focus-visible {
		outline: none;
	}
}

.numpad[b-h3cxgyytrz] {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 8px;
	height: 250px;
}

.numpad-key[b-h3cxgyytrz] {
	border: none;
	border-radius: 8px;
	background: var(--color-surface-app);
	font-size: var(--font-size-large);
	font-style: normal;
	font-weight: var(--font-weight-bold);
	line-height: normal;
	color: var(--color-neutral-0);
	text-align: center;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	-webkit-tap-highlight-color: transparent;
	transition: background-color ease-in-out .1s;

	&:hover {
		background: color-mix(in srgb, var(--color-surface-app) 90%, transparent);
	}

	&:active[b-h3cxgyytrz],
	&.is-pressed[b-h3cxgyytrz] {
		background: var(--color-pos-accent);
	}
}

.numpad-key.numpad-action[b-h3cxgyytrz] {
	gap: 6px;
}

.numpad-key.numpad-action--primary[b-h3cxgyytrz] {
	background: var(--color-button-primary);
	color: #fff;
	font-size: var(--font-size-small);
	font-weight: var(--font-weight-medium);

	&:hover {
		background: var(--color-button-primary-hover);
	}

	&:active[b-h3cxgyytrz],
	&.is-pressed[b-h3cxgyytrz] {
		background: var(--color-button-primary-darker);
	}
}

.numpad-key.numpad-action--pos-accent[b-h3cxgyytrz] {
	background: var(--color-pos-accent);

	&:hover {
		background: color-mix(in srgb, var(--color-pos-accent) 90%, transparent);
	}

	&:active[b-h3cxgyytrz],
	&.is-pressed[b-h3cxgyytrz] {
		background: color-mix(in srgb, var(--color-pos-accent) 70%, white);
	}
}
/* /Components/Shared/NumericKeypadReturnIcon.razor.rz.scp.css */
.numpad-return-icon[b-wmhrq69x7w] {
	display: block;
	width: 19px;
	height: 23px;
	flex-shrink: 0;
}
/* /Components/Shared/OperatingSchedulePanel.razor.rz.scp.css */
.panel[b-5k6u9etlsw] {
	display: flex; 
	flex-direction: column; 
	margin-top: 8px; 
	background-color: #fafafa; 
	border-radius: 5px; 
	border: 1px solid #eee; 
	padding: 8px;
}

.panel-header[b-5k6u9etlsw] {
	font-weight: bold;
}

.panel-content[b-5k6u9etlsw] {
	display: flex;
	width: 100%;
	gap: 12px;
	font-size: 12px;
	flex-wrap: wrap;
}

.day-list[b-5k6u9etlsw] {
	display: flex;
	flex-direction: column;
	flex-shrink: 0;
}
/* /Components/Shared/Pagination.razor.rz.scp.css */
.pagination-container[b-nq6oloekyt] {
	display: flex; 
	align-items: center; 
	gap: 0.25rem;
	height: 38px;
}

.pagination-info[b-nq6oloekyt] {
	margin: 0 0.5rem;
}
/* /Components/Shared/Pill.razor.rz.scp.css */
.pill[b-au9ehajfx8]{
	display: inline-flex;
	padding: 2px 8px;
	border-radius: 15px;
	font-size: 8pt;
	text-transform: uppercase;
	font-weight: bold;
	align-items: center;
	gap: 7px;
	
	.dismiss{
		display: flex;
		align-items: center;
		justify-content: center;
		width: 12px;
		height: 12px;
		border-radius: 50%;
		background-color: #FFFFFF33;
		transition: all 0.2s ease;
		
		i{
			font-size: 10pt;
			font-weight: 600;
		}
	}
	
	&:hover[b-au9ehajfx8]{
		.dismiss
		{
			background-color: #FF0000AA;
			width: 16px;
			height: 16px;
		}
	}
}

.with-dismiss[b-au9ehajfx8]{
	cursor: pointer;
}
.clickable[b-au9ehajfx8]{
	cursor: pointer;
	transition: opacity 0.2s ease, box-shadow 0.2s ease;

	&:hover{
		box-shadow: 0 0 0 2px #00000022;
	}
}

.dimmed[b-au9ehajfx8]{
	opacity: 0.35;
}

.dimmed:hover[b-au9ehajfx8]{
	opacity: 0.7;
}
/* /Components/Shared/Social.razor.rz.scp.css */
.social-link[b-2n21ghx1ek]{
	transition: all ease-in-out 0.2s;
	opacity: 0.9;
	
	&:hover{
		opacity: 1;
		transform: scale(1.2);
	}
}
/* /Components/Shared/TextFader.razor.rz.scp.css */
.items[b-jomcpwr0j9] {
	width: 100%;
	height: 1.5em;
	overflow: hidden;
	margin-top: 5px;
}

.item[b-jomcpwr0j9] {
	display: none;
	width: 100%;
	height: 100%;
	color: #444;
}

.active[b-jomcpwr0j9] {
	display: flex;
	justify-content: left;
	align-items: center;
	animation: appear-b-jomcpwr0j9 1.2s;
}

@keyframes appear-b-jomcpwr0j9 {
	from {
		opacity: 0;
		transform: translateY(20px);
	}
	to {
		opacity: 1;
		transform: translateY(0px);
	}
}
/* /Components/Shared/Toolbar.razor.rz.scp.css */
.toolbar[b-6px377f38x]{
	display: grid;
	grid-template-columns: auto auto;
	align-items: center;
	padding: 15px;
	margin-bottom: 10px;
	background-color: #FAFAFA;
	position: sticky;
	top: 0;
	left: 0;
	right: 0;
	box-shadow: 0 0 10px rgba(0,0,0,0.1);
	z-index: 100;

	.left{
		display: flex;
		align-items: center;
		gap: 10px;
	}

	.right[b-6px377f38x]
	{
		display: flex;
		justify-content: flex-end;
		align-items: center;
		gap: 10px;
	}
}

[b-6px377f38x] .toolbar-fluent-control{
	--neutral-foreground-rest: #666;
	--type-ramp-base-font-size: 10pt;
}
/* /Core/DynamicForms/ControlRenderers/VeleoCodeEditor.razor.rz.scp.css */
.ace-editor-container[b-fnook35v57]{

	display: grid;
	grid-template-rows: 45px auto;
	height: 400px;
	
	&.full-screen{
		--indent: 75px;
		position: fixed;
		top: var(--indent);
		left: var(--indent);
		right: var(--indent);
		bottom: var(--indent);
		z-index: 500;
		box-shadow: 0 0 10px rgba(0,0,0,0.5);
		border-radius: 8px;
		overflow: clip;
		height: auto;

		&:before{
			content: '';
			position: fixed;
			top: 0;
			left: 0;
			right: 0;
			bottom: 0;
			background-color: rgba(0,0,0,0.3);
			z-index: -1;
		}
	}

	.button-bar[b-fnook35v57]{
		display: grid;
		background-color: #FFF;
		border: 1px solid #CCC;
		border-bottom-width: 3px;
		align-items: center;
		grid-template-columns: 1fr 1fr;

		.left{
			padding: 5px 15px;
			height: 45px;

		}
		.right[b-fnook35v57]{
			padding: 5px 15px;
			height: 45px;
			text-align: right;
		}
	}
	
	.split-view-container[b-fnook35v57]{
		background-color: #FFF; 
		border: 1px solid #CCC;
		overflow-y: auto;
		height: 100%;
	}
	
	.editor-styles[b-fnook35v57]{
		width: 100%;
		height:100%; 
		font-size: 11pt;
	}
	
	.editor-container[b-fnook35v57]{
		display: block;
		width: 100%;
		overflow-y: scroll;
		position: relative;
	}
	
}
/* /Core/DynamicForms/ControlRenderers/VeleoInputFile.razor.rz.scp.css */
.image-preview[b-tcddafd1h4]{
	border-radius: var(--style-form-component-border-radius);
	border: 1px solid var(--color-form-component-border);
	margin-bottom: 5px;
	display: grid;
	transition: background ease-in-out 0.5s;
	
	&.light-mode{
		background: repeating-conic-gradient(#FAFAFA 0 25%, #0000 0 50%) 50% / 10px 10px;
	}
	
	&.dark-mode[b-tcddafd1h4]{
		background: repeating-conic-gradient(#9A9A9A 0 25%, #0000 0 50%) 50% / 10px 10px;
	}
	
	/*set the max height of the image*/
	object[b-tcddafd1h4]{
		height: 100px;
		display: inline-block;
		margin: 10px;
		
		span{
			color: #AAA;
			font-size: 10pt;
			font-weight: bold;
		}
	}	
	
	span.chrome-error[b-tcddafd1h4]{
		display: block;
		background-color: #bd9a61;
		color: #FFF;
		padding: 5px 15px;
		font-size: 8pt;
	}
	
	.file-info[b-tcddafd1h4]{
		padding: 3px 12px;
		font-size: 9pt;
		background-color: var(--color-form-component-background);
		color: #888;
		display: grid;
		grid-template-columns: auto auto 37px 37px;
		border-bottom-left-radius: 7px;
		border-bottom-right-radius: 7px;
		align-items: center;
		gap: 10px;
		min-height: 37px;
		
		&.with-image{
			border-top: 1px solid var(--color-form-component-border);
		}

		&.can-remove[b-tcddafd1h4]{
			grid-template-columns: auto auto 37px 37px 37px;
		}
		
		label[b-tcddafd1h4]{
			display: flex;
			height: 37px;
			width: 37px;
			align-items: center;
			justify-content: center;
			transition: all ease-in-out 0.025s;
			cursor: pointer;
			font-weight: 800;
			font-size: 14pt;
			border-radius: 5px;
			
			&:hover{
				background-color: var(--color-button-primary-lighter);
				color: var(--color-button-primary-darker);
			}
		}
	}
}

.veleo-input-file-button[b-tcddafd1h4] {
	display: grid;
	grid-template-columns: 30px auto;
	grid-template-rows: auto auto;
	background-color: #eee;
	border-radius: 5px;
	cursor: pointer;
	border: 1px solid #ddd;
	width: max-content;
	align-items: center;
	padding: 4px 12px;
	transition: all ease-in-out 0.2s;
	
	i{
		grid-row: 1/3;
		grid-column: 1;
		font-size: 14pt;
		color: #555;
	}
	
	span.label[b-tcddafd1h4]{
		grid-row: 1;
		grid-column: 2;
		font-size: 9pt;
		color: #222;
	}
	
	span.max-file-size[b-tcddafd1h4]{
		grid-row: 2;
		grid-column: 2;
		font-size: 8pt;
		color: #777;
		line-height: 1;
		font-style: italic;
	}
	
	&:hover[b-tcddafd1h4]{
		background-color: #e0e0e0;
	}
}
/* /Core/DynamicForms/ControlRenderers/VeleoMetadataTypeSelection.razor.rz.scp.css */
.option-container[b-z7t80p0hey]{
	display: flex;
	gap: 3px;
	flex-direction: column;
	background-color: var(--color-form-component-background);
	border: 1px solid var(--color-form-component-border);
	border-radius: var(--style-form-component-border-radius);
	margin: 5px 0;
	padding: 10px;
}

.option-row[b-z7t80p0hey]{
	display: grid;
	grid-template-columns: 25px auto 75px 85px;
	align-items: center;
	gap: 10px;
	
	div.row-num{
		text-align: center;
		color: #999;
	}
	
	div.row-button[b-z7t80p0hey]{
		height: 100%;
		text-align: right;
	}
}

.global-help[b-z7t80p0hey]{
	font-style: italic;
	color: #888;
	font-size: 9pt;
	padding: 10px 10px 0 10px;
}

.global-advice[b-z7t80p0hey]{
	color: #555;
	font-size: 9pt;
	background-color: #f1f4cb;
	padding: 5px 15px;
	border-radius: 50px;
	display: inline-block;
}
/* /Core/DynamicForms/ControlRenderers/VeleoNumberList.razor.rz.scp.css */
.number-list.container[b-nou24en6nv]{
	background-color: var(--color-form-component-background);
	border-radius: var(--style-form-component-border-radius);
	border: 1px solid var(--color-form-component-border);
	margin-bottom: 5px;
	width: max-content;
	padding: 10px 10px 5px 10px;
	
	.input-row{
		display: grid;
		grid-template-columns: 8px auto 35px 30px 30px;
		gap: 5px;
		margin-bottom: 5px;
		
		.row-num{
			color: #aaa;
			display: flex;
			font-size: 8pt;
			align-items: center;
			justify-content: center;
		}
		
		.suffix[b-nou24en6nv]{
			color: #aaa;
			display: flex;
			font-size: 8pt;
			align-items: center;
		}
	}
}
/* /Core/DynamicForms/ControlRenderers/VeleoNumericOnly.razor.rz.scp.css */
label.label[b-eaf10mssmr] {
	margin: 0;
}
/* /Core/DynamicForms/ControlRenderers/VeleoProductInput.razor.rz.scp.css */
.product-input[b-0c8fgrhxb9]{
	padding: 5px 15px;
	display: grid;
	grid-template-columns: auto max-content;
	font-size: 9pt;
	
	.select-message{
		display: flex;
		align-items: center;
		font-style: italic;
		color: #999;
		cursor: pointer;

		&:hover{
			color: #666;
		}
	}

	.invalid[b-0c8fgrhxb9]{
		color: var(--color-form-error);
	}

	.profile[b-0c8fgrhxb9] {
		display: flex;
		align-items: center;
	}
}
/* /Core/DynamicForms/ControlRenderers/VeleoSalesChannelAvailability.razor.rz.scp.css */
.channel-grid[b-3yl54bevq9]{
	padding: 20px;
	display: grid;
	grid-template-columns: 150px auto;
	gap: 10px;
}
/* /Core/DynamicForms/ControlRenderers/VeleoStringList.razor.rz.scp.css */
.string-list[b-eiwkj6ugol]{
	padding: 20px;
	
	.input-row{
		display: grid;
		grid-template-columns: 40px auto 50px;
		
		span.row-num{
			display: grid;
			place-items: center;
			font-weight: bold;
			color: #CCC;
			font-size: 10pt;
		}
	}
	
	.button-row[b-eiwkj6ugol]{
		display: grid;
		grid-template-columns: max-content auto;
		align-items: center;
		gap: 20px;
		
		div.button-col{
			display: grid;
			min-height: 30px;
		}
		
		div.text-col[b-eiwkj6ugol]{
			color: #999;
			font-style: italic;
			font-size: 9pt;
		}
	}
}
/* /Core/DynamicForms/EntityWithHistoryDialog.razor.rz.scp.css */
.history-container[b-89abrl6fs4]{
	display: flex;
	flex: 1;
	height: 100%;
	gap: 20px;
	.history-list{
		
	}
	
	.history-list[b-89abrl6fs4]{
		overflow-y: auto;
	}
	
	.history-value-changes[b-89abrl6fs4]{
		flex: 1;
		width: 100%;
		overflow-y: auto;
		
		.audit-note{
			color: #333;
			margin-bottom: 10px;
		}
		
		.change-grid[b-89abrl6fs4]{
			display: grid;
			grid-template-columns: 0.5fr 1fr 1fr;
			font-size: 10pt;
			
			.header{
				font-weight: bold;
				background-color: #dcdcdc;
				padding: 6px;
			}
			
			.data[b-89abrl6fs4]{
				padding: 6px;
			}
			
			> span:nth-child(6n+4)[b-89abrl6fs4],
			> span:nth-child(6n+5)[b-89abrl6fs4],
			> span:nth-child(6n+6)[b-89abrl6fs4]
			{ background-color: #ededed;}
		}
	}
}
/* /Core/DynamicForms/EntityWithHistoryViewer.razor.rz.scp.css */
.entity-history[b-36gqt7kemk]{
	background-color: #f3f4f688;
	border-radius: var(--style-border-radius);
	margin-top: 20px;
	display: flex;
	padding: 10px 20px;
	gap: 20px;
	justify-content: space-between;
	line-height: 1.3;
}

.entity-history-label[b-36gqt7kemk]{
	font-size: 7pt;
	color: #444;
	font-weight: 600;
	display: block;
	text-transform: uppercase;
}

.entity-history-data[b-36gqt7kemk]{
	font-size: 9pt;
	color: #777;
	display: block;
}
/* /Core/ManualForms/Controls/AttributeListInput.razor.rz.scp.css */
.option-container[b-suohgr2p71]{
	display: flex;
	gap: 3px;
	flex-direction: column;
	background-color: var(--color-form-component-background);
	border: 1px solid var(--color-form-component-border);
	border-radius: var(--style-form-component-border-radius);
	margin: 5px 0;
	padding: 10px;
}

.option-row[b-suohgr2p71]{
	display: grid;
	grid-template-columns: 1fr 1fr auto;
	align-items: center;
	gap: 10px;

	div.row-button{
		height: 100%;
		text-align: right;
	}
}
/* /Core/ManualForms/Controls/ContactInput.razor.rz.scp.css */
.contact-input[b-7cj8neuaiz]{
	display: grid;
	grid-template-columns: auto 36px;
	height: 36px;
	
	.select-message{
		display: flex; 
		align-items: center; 
		font-style: italic; 
		color: #999;
		cursor: pointer;
		
		&:hover{
			color: #666;
		}
	}
	
	.invalid[b-7cj8neuaiz]{
		color: var(--color-form-error);
	}
	
	.profile[b-7cj8neuaiz]{
		display: grid;
		grid-template-columns: 50px auto;
		gap: 5px;
		align-items: center;
	}
}
/* /Core/ManualForms/Controls/CourseLevelSelectionInput.razor.rz.scp.css */
.skill-matrix[b-ehk85fs353]{
	display: grid;
	grid-template-columns: auto auto;
	gap: 10px 5px;
	padding: 20px;

	.strand-name{
		text-transform: uppercase;
		color: #444;
		font-weight: var(--font-weight-semibold);
		background-color: #E2E3E4;
		padding: 10px;
	}

	.skill-list[b-ehk85fs353]{
		display: grid;
		grid-template-rows: 1fr;
		gap: 5px;

		.skill{
			display: grid;
			grid-template-columns: 100px 125px auto;
			background-color: #F1F1F1;
			cursor: pointer;

			.skill-check{
				display: flex;
				align-items: center;
				justify-content: center;
				.checkmark{
					width: 20px;
					height: 20px;
					border: 1px solid #CCC;
					background-color: #fff;
					border-radius: 5px;
					transition: background-color 0.5s;
				}
			}

			.skill-code[b-ehk85fs353]{
				padding: 10px;
			}

			.skill-name[b-ehk85fs353]{
				padding: 10px;
			}

			&:hover[b-ehk85fs353]{
				background-color: #E2E3E4;
			}
		}

		.active[b-ehk85fs353]{
			background-color: #e2f0e5;
			.checkmark{
				background-color: #88b091;
				border-color: #fff;
			}
		}
	}
}
/* /Core/ManualForms/Controls/CourseSkillMatrixInput.razor.rz.scp.css */
.skill-matrix[b-tlwtipsiyo]{
	display: grid;
	grid-template-columns: auto auto;
	gap: 10px 5px;
	padding: 20px;
	
	.strand-name{
		text-transform: uppercase;
		color: #444;
		font-weight: var(--font-weight-semibold);
		background-color: #E2E3E4;
		padding: 10px;
	}
	
	.skill-list[b-tlwtipsiyo]{
		display: grid;
		grid-template-rows: 1fr;
		gap: 5px;
		
		.skill{
			display: grid;
			grid-template-columns: 100px 125px auto;
			background-color: #F1F1F1;
			cursor: pointer;
			
			.skill-check{
				display: flex;
				align-items: center;
				justify-content: center;
				.checkmark{
					width: 20px;
					height: 20px;
					border: 1px solid #CCC;
					background-color: #fff;
					border-radius: 5px;
					transition: background-color 0.5s;
				}
			}
			
			.skill-code[b-tlwtipsiyo]{
				padding: 10px;
			}

			.skill-name[b-tlwtipsiyo]{
				padding: 10px;
			}
			
			&:hover[b-tlwtipsiyo]{
				background-color: #E2E3E4;
			}
		}

		.active[b-tlwtipsiyo]{
			background-color: #e2f0e5;
			.checkmark{
				background-color: #88b091;
				border-color: #fff;
			}
		}
	}
}
/* /Core/ManualForms/Controls/CuratedColourPicker.razor.rz.scp.css */
.curated-colour-picker[b-8b0b7qb562] {
    position: relative;
    display: inline-block;
}

.colour-trigger[b-8b0b7qb562] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 4px 10px 4px 6px;
    background: var(--color-form-component-background, #fafafa);
    border: 1px solid var(--color-form-component-border, #eee);
    border-radius: var(--style-form-component-border-radius, 5px);
    cursor: pointer;
    user-select: none;
    min-width: 120px;
    transition: border-color 0.15s;
}

.colour-trigger:hover[b-8b0b7qb562] {
    border-color: #bbb;
}

.colour-preview[b-8b0b7qb562] {
    width: 24px;
    height: 24px;
    border-radius: 4px;
    border: 1px solid rgba(0, 0, 0, 0.12);
    flex-shrink: 0;
}

.colour-hex[b-8b0b7qb562] {
    font-size: 13px;
    font-family: monospace;
    color: #444;
    flex: 1;
    width: 9ch;
    min-width: 0;
    padding: 2px 4px;
    margin: 0;
    background: transparent;
    border: 1px solid transparent;
    border-radius: 3px;
    outline: none;
    cursor: text;
    text-transform: uppercase;
}

.colour-hex[b-8b0b7qb562]::placeholder {
    color: #999;
    text-transform: none;
}

.colour-hex:hover[b-8b0b7qb562] {
    border-color: var(--color-form-component-border, #eee);
}

.colour-hex:focus[b-8b0b7qb562] {
    background: #fff;
    border-color: var(--color-brand-primary, #036ac4);
}

.colour-hex.invalid[b-8b0b7qb562] {
    border-color: #dc2626;
    color: #b91c1c;
}

.colour-chevron[b-8b0b7qb562] {
    font-size: 11px;
    color: #888;
    flex-shrink: 0;
}

/* Backdrop to capture outside clicks */
.palette-backdrop[b-8b0b7qb562] {
    position: fixed;
    inset: 0;
    z-index: 199;
}

.palette-panel[b-8b0b7qb562] {
    position: absolute;
    top: calc(100% + 4px);
    left: 0;
    z-index: 200;
    background: #fff;
    border: 1px solid var(--color-form-component-border, #eee);
    border-radius: 10px;
    padding: 12px;
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.13);
    min-width: 220px;
}

.hue-row[b-8b0b7qb562] {
    display: flex;
    gap: 6px;
    margin-bottom: 6px;
}

.hue-row:last-of-type[b-8b0b7qb562] {
    margin-bottom: 0;
}

.colour-swatch[b-8b0b7qb562] {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    cursor: pointer;
    border: 2px solid transparent;
    transition: transform 0.1s ease, box-shadow 0.1s ease;
    flex-shrink: 0;
}

.colour-swatch:hover[b-8b0b7qb562] {
    transform: scale(1.18);
}

.colour-swatch.selected[b-8b0b7qb562] {
    border-color: #fff;
    box-shadow: 0 0 0 2.5px #333;
}

.advanced-section[b-8b0b7qb562] {
    margin-top: 10px;
    padding-top: 10px;
    border-top: 1px solid var(--color-form-component-border, #eee);
}

.advanced-toggle[b-8b0b7qb562] {
    background: none;
    border: none;
    padding: 0;
    font-size: 12px;
    color: var(--color-brand-primary, #036ac4);
    cursor: pointer;
    text-decoration: underline;
    text-underline-offset: 2px;
}

.advanced-toggle:hover[b-8b0b7qb562] {
    opacity: 0.75;
}

.advanced-row[b-8b0b7qb562] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.advanced-label[b-8b0b7qb562] {
    font-size: 12px;
    color: #666;
    flex-shrink: 0;
}

.advanced-input[b-8b0b7qb562] {
    width: 36px;
    height: 28px;
    padding: 1px 2px;
    border: 1px solid var(--color-form-component-border, #eee);
    border-radius: 4px;
    cursor: pointer;
    background: none;
    flex-shrink: 0;
}

.advanced-hex[b-8b0b7qb562] {
    font-size: 12px;
    font-family: monospace;
    color: #555;
}

.colour-trigger.locked[b-8b0b7qb562] {
    cursor: default;
    opacity: 0.6;
}

.colour-trigger.locked:hover[b-8b0b7qb562] {
    border-color: var(--color-form-component-border, #eee);
}

.colour-trigger.locked .colour-hex[b-8b0b7qb562] {
    cursor: default;
}

.colour-trigger.locked .colour-hex:hover[b-8b0b7qb562] {
    border-color: transparent;
}
/* /Core/ManualForms/Controls/DayScheduleInput.razor.rz.scp.css */
.no-periods[b-01h6tw7l56]{
	background-color: #e5b1b1;
	padding: 10px;
	border-radius: 10px;
	text-align: center;
	display: flex;
	width: max-content;
	margin: auto;
}

.time-period-container[b-01h6tw7l56]{
	padding: 0 20px;
	display: grid;
	gap: 5px 20px;
	width: 100%;
	grid-template-columns: auto auto auto 50px;
	align-items: center;

	.label{
		color: #999;
		font-weight: bold;
		font-size: 9pt;
	}
	
	.start-time[b-01h6tw7l56]{
		display: grid;
		grid-template-columns: auto auto;
		gap: 5px;

	}

	.end-time[b-01h6tw7l56]{
		display: grid;
		grid-template-columns: auto auto;
		gap: 5px;

	}

	.rate-period[b-01h6tw7l56]{

	}

	.delete-button[b-01h6tw7l56]{

	}
}
/* /Core/ManualForms/Controls/DropDownDateInput.razor.rz.scp.css */
div.date-container[b-cbumy5j491]{
	display: grid;
	grid-template-columns: 100px auto 100px;
	gap: 5px;
}

.date-label[b-cbumy5j491]{
	padding-top: 9px;
	line-height: 1;
}

.date-label__with-age[b-cbumy5j491]{
	padding-top: 5px;
}
/* /Core/ManualForms/Controls/DropDownTimeInput.razor.rz.scp.css */
.time-container[b-h5sn3q7d8m]{
	border-radius: calc(var(--control-corner-radius) * 1px); 
	background-color: var(--neutral-fill-secondary-rest); 
	display: grid; 
	grid-template-columns: 65px 14px 65px; 
	align-items: center;
}
/* /Core/ManualForms/Controls/InternationalPhoneNumberInput.razor.rz.scp.css */
div.telephone-container[b-fldz4tj01t]{
	display: grid;
	grid-template-columns: 100px auto;
	gap: 10px ;
}
/* /Core/ManualForms/Controls/MatrixSelectionInput.razor.rz.scp.css */
.item-matrix[b-hwvyffan9i]{
	display: grid;
	grid-template-columns: auto auto;
	gap: 10px 5px;
	padding: 20px;
	
	.group-name{
		text-transform: uppercase;
		color: #444;
		font-weight: bold;
		background-color: #E2E3E4;
		padding: 10px;
	}
	
	.item-list[b-hwvyffan9i]{
		display: grid;
		grid-template-rows: 1fr;
		gap: 5px;
		
		.item{
			display: grid;
			background-color: #F1F1F1;
			cursor: pointer;
			
			.item-check{
				display: flex;
				align-items: center;
				justify-content: center;
				.checkmark{
					width: 20px;
					height: 20px;
					border: 1px solid #CCC;
					background-color: #fff;
					border-radius: 5px;
					transition: background-color 0.5s;
				}
			}
			
			.item-field[b-hwvyffan9i]{
				padding: 10px;
			}
			
			&:hover[b-hwvyffan9i]{
				background-color: #E2E3E4;
			}
		}

		.active[b-hwvyffan9i]{
			background-color: #e2f0e5;
			.checkmark{
				background-color: #88b091;
				border-color: #fff;
			}
		}
	}
}
/* /Core/ManualForms/Controls/NestedListInput.razor.rz.scp.css */
.list-item[b-bfdqvpm4vc] {
	border-left: 1px dashed #ddd;
	padding: 5px 0 5px 1rem;
	position: relative;
	
	.controls{
		display: grid;
		grid-template-columns: auto 50px 50px;
		align-items: center;
	}
}

.list-item[b-bfdqvpm4vc]::before {
	content: '';
	display: block;
	width: 1rem;
	height: 1px;
	border-bottom: 1px dashed #ddd;
	position: absolute;
	left: 0;
	top: 21px;
}

.sibling[b-bfdqvpm4vc]{
	display: flex;
	align-items: center;
	justify-content: center;
	--sibling-color: #ddd;
	border-left: 1px dashed var(--sibling-color);
	
	margin-bottom: 20px;
	
	width: max-content;
	border-top: 1px solid var(--sibling-color);
	border-bottom: 1px solid var(--sibling-color);
	border-right: 1px solid var(--sibling-color);
	
	border-top-right-radius: 5px;
	border-bottom-right-radius: 5px;
	background-color: var(--sibling-color);
}
/* /Core/ManualForms/Controls/PostalAddressInput.razor.rz.scp.css */
/* /Core/ManualForms/Controls/ProductPricingInput.razor.rz.scp.css */
.input-container[b-zkifnvzd18] {
	min-height: 26px;
	display: flex;
	justify-content: center;
	align-items: center;
	cursor: pointer;
	position: relative;
	width: 100%;
	
	&.disabled-select {
		cursor: not-allowed;
		color: #b3b3b3;
	}
}

input[b-zkifnvzd18] {
	width: 100%;
	text-align: center;
	padding: 0 1.25rem;
}

input[b-zkifnvzd18]::-webkit-outer-spin-button,
input[b-zkifnvzd18]::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

/* Firefox */
input[type=number][b-zkifnvzd18] {
	-moz-appearance: textfield;
}

.input-prefix[b-zkifnvzd18] {
	position: absolute;
	left: 0.5rem;
	width: 0.5rem;
}

.input-suffix[b-zkifnvzd18] {
	position: absolute;
	right: 0.5rem;
	width: 0.5rem;
}

.overridden-value[b-zkifnvzd18] {
	font-weight: bold;
	font-style: italic;
}

.preview-value[b-zkifnvzd18] {
	color: #ff0000;
	font-weight: bold;
	font-style: italic;
}
/* /Core/ManualForms/Controls/RecurrenceInput.razor.rz.scp.css */
.recurrence-container[b-2gu9xcpeug] {
	display: flex;
	flex-direction: column;
	gap: 10px;
	margin-bottom: 5px;
}

.recurrence-label[b-2gu9xcpeug] {
	margin-right: 5px;
}

.recurrence-row[b-2gu9xcpeug] {
	display: flex; 
	align-items: center; 
	gap: 5px;
}

.button-grid[b-2gu9xcpeug] {
	display: grid;
	gap: 5px;
	justify-content: start;
	grid-column: 2;
}

.button-grid-months[b-2gu9xcpeug] {
	grid-template-columns: repeat(6, auto);
}

.button-grid-days[b-2gu9xcpeug] {
	grid-template-columns: repeat(7, auto);
}

.month-day-list[b-2gu9xcpeug] {
	display: flex; 
	flex-direction: column; 
	align-items: flex-start; 
	gap: 5px; 
	grid-column: 2;
}

.day-button[b-2gu9xcpeug] {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 40px;
	width: 40px;
	border-radius: 3px;
	--background-color: #efefef;
	background-color: var(--background-color);
	color: #777;
	font-weight: 600;
	cursor: pointer;
	user-select: none;
	transition: background-color ease-in-out 0.1s;
}

.day-button:not(.day-button_disabled):hover[b-2gu9xcpeug] {
	background-color: color-mix(in hsl, var(--background-color), #fff 25%);
}

.day-button.day-button_selected[b-2gu9xcpeug] {
	--background-color: var(--color-module-settings);
	color: #fff;
}

.day-button.day-button_disabled[b-2gu9xcpeug] {
	opacity: 0.3;
	cursor: not-allowed;
}
/* /Core/ManualForms/Controls/RecurrenceProjection.razor.rz.scp.css */
.projected-dates-panel[b-853b1rnys2] {
	margin-top: 10px;
	display: flex;
	gap: 10px;
	align-items: center;
	font-size: 9pt;
	background-color: var(--color-form-component-background);
	border-radius: var(--style-form-component-border-radius);
	border: 1px solid var(--color-form-component-border);
	padding: 3px 12px;
	color: #333;

	.projected-dates-container{
		display: flex;
		gap: 15px;
		padding: 10px 0;
		.projected-date{
			flex: 1 1;
			min-width: 100px;
			background-color: #E6E6E6;
			border-radius: 5px;
			overflow: hidden;
			font-size: 8pt;
			color: #333;
			transition: background-color 0.2s ease;
			display: grid;
			grid-template-columns: auto;
			grid-template-rows: 20px 20px 35px 20px;
			border: 1px solid #dadada;
			box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);

			span{
				display: flex;
				align-items: center;
				padding: 5px;
				text-transform: uppercase;
				justify-content: center;
				align-content: center;
			}

			span.month[b-853b1rnys2]{ background-color: red; color: #fff;}
			span.dow[b-853b1rnys2]{ background-color: #eee;}
			span.day[b-853b1rnys2]{ background-color: #fff; font-size: 13pt; font-weight: bold;}
			span.year[b-853b1rnys2]{ background-color: #eee;}
		}
	}
}
/* /Core/ManualForms/Controls/TimeRangeInput.razor.rz.scp.css */
/* /Core/ManualForms/Controls/TreeViewInput.razor.rz.scp.css */
/* /Core/ManualForms/Controls/WeekScheduleInput.razor.rz.scp.css */
.week-schedule-editor[b-1tf24qe2y0]{
	
	.day-container{
		margin-top: 10px;
		//background-color: #EFEFEF;
		background-color: #FAFAFA;
		display: grid;
		gap: 35px;
		padding: 20px;
		border-radius: var(--style-form-component-border-radius);
		
		.day-card{
			border-radius: var(--style-form-component-border-radius);
			background-color: #FFF;
			border: 1px solid #DDD;
			
			h5{
				border-top-left-radius: var(--style-form-component-border-radius);
				border-top-right-radius: var(--style-form-component-border-radius);
				display: block;
				padding: 5px 10px;
				text-align: center;
				background-color: #DDD;
				font-size: 11pt;
				font-weight: bold;
			}
			
			.day-input[b-1tf24qe2y0]{
				
			}
		}
	}
	
}
/* /Layout/BlankLayout.razor.rz.scp.css */
/* /Layout/Footer.razor.rz.scp.css */
footer[b-70o7yy1cjv]
{
	--footer-item-color: #999;
	--footer-item-color-hover: white;
	
	--veleo-icon-color: var(--footer-item-color);
	--veleo-icon-size: 14pt;
	--veleo-icon-color-hover: var(--footer-item-color-hover);
	
	display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    min-width: 0;
    font-size: 10pt;
    padding: 0 30px;

	.tenant-name {
		color: var(--footer-item-color);
		font-size: 9pt;
		min-width: 0;
		overflow: hidden;
		text-overflow: ellipsis;
		white-space: nowrap;
	}

	.clickable-link[b-70o7yy1cjv]{
		color: var(--footer-item-color);
		cursor: pointer;
		transition: color ease-in-out 0.3s;
	}

	.clickable-link:hover[b-70o7yy1cjv]{
		color: var(--footer-item-color-hover);
	}

	.right-panel[b-70o7yy1cjv]{
		display: flex;
		align-items: center;
		justify-content: center;
		flex-shrink: 0;
		gap: 24px;
	}
}
/* /Layout/Header.razor.rz.scp.css */
.siteHeader[b-bdpku1pi4q]{display:grid;grid-template-columns:auto minmax(0, 1fr) auto;align-items:center;column-gap:16px;width:100%;min-width:0;position:relative;box-sizing:border-box;padding:0 16px}@media screen and (min-width: 1000px){.siteHeader[b-bdpku1pi4q]{grid-template-columns:100px auto 100px;column-gap:0;padding:0;left:env(titlebar-area-x, 0);width:env(titlebar-area-width, 100%)}}.siteHeader .leftIcons[b-bdpku1pi4q]{padding-left:0;display:flex;align-items:center}@media screen and (min-width: 1000px){.siteHeader .leftIcons[b-bdpku1pi4q]{visibility:hidden;padding-left:15px}}.siteHeader .middle[b-bdpku1pi4q]{display:flex;justify-content:center;align-items:center;min-width:0;-webkit-app-region:drag}.siteHeader .rightIcons[b-bdpku1pi4q]{display:flex;justify-content:flex-end;align-items:center;padding-right:0;gap:6px}@media screen and (min-width: 1000px){.siteHeader .rightIcons[b-bdpku1pi4q]{padding-right:15px;gap:10px}}
/* /Layout/MainLayout.razor.rz.scp.css */
.page[b-gs8lh37yas] {
    position: relative;
    display: flex;
    flex-direction: column;
}

main[b-gs8lh37yas] {
    flex: 1;
}

.sidebar[b-gs8lh37yas] {
    background-image: linear-gradient(180deg, rgb(5, 39, 103) 0%, #3a0647 70%);
}

.top-row[b-gs8lh37yas] {
    background-color: #f7f7f7;
    border-bottom: 1px solid #d6d5d5;
    justify-content: flex-end;
    height: 3.5rem;
    display: flex;
    align-items: center;
}

    .top-row[b-gs8lh37yas]  a, .top-row[b-gs8lh37yas]  .btn-link {
        white-space: nowrap;
        margin-left: 1.5rem;
        text-decoration: none;
    }

    .top-row[b-gs8lh37yas]  a:hover, .top-row[b-gs8lh37yas]  .btn-link:hover {
        text-decoration: underline;
    }

    .top-row[b-gs8lh37yas]  a:first-child {
        overflow: hidden;
        text-overflow: ellipsis;
    }

@media (max-width: 640.98px) {
    .top-row[b-gs8lh37yas] {
        justify-content: space-between;
    }

    .top-row[b-gs8lh37yas]  a, .top-row[b-gs8lh37yas]  .btn-link {
        margin-left: 0;
    }
}

@media (min-width: 641px) {
    .page[b-gs8lh37yas] {
        flex-direction: row;
    }

    .sidebar[b-gs8lh37yas] {
        width: 250px;
        height: 100vh;
        position: sticky;
        top: 0;
    }

    .top-row[b-gs8lh37yas] {
        position: sticky;
        top: 0;
        z-index: 1;
    }

    .top-row.auth[b-gs8lh37yas]  a:first-child {
        flex: 1;
        text-align: right;
        width: 0;
    }

    .top-row[b-gs8lh37yas], article[b-gs8lh37yas] {
        padding-left: 2rem !important;
        padding-right: 1.5rem !important;
    }
}
/* /Layout/NavMenu.razor.rz.scp.css */
nav[b-egm6c67xt8]{--veleo-icon-color: #ffffffaa;--veleo-icon-size: 24pt;width:100%;text-align:center;display:grid;grid-template-columns:1fr;grid-template-rows:[navheader] max-content [content] auto [navfooter] 75px;z-index:99;background-color:var(--color-surface-app)}nav header[b-egm6c67xt8]{grid-row:navheader;padding:20px 0 50px 0}@media screen and (min-width: 800px){nav header[b-egm6c67xt8]{padding:0 0 50px 0}}nav header div.big-add[b-egm6c67xt8]{width:50px;height:50px}@media screen and (min-width: 1500px){nav header div.big-add[b-egm6c67xt8]{width:75px;height:75px}}nav header div.big-add[b-egm6c67xt8]{border:3px solid #979797;color:rgba(255,255,255,.3333333333);margin:0 auto;border-radius:50%;display:flex;justify-content:center;align-items:center;font-size:25pt;font-weight:600;cursor:pointer;transition:background-color ease-in-out .3s,color ease-in-out .3s,border-color ease-in-out .3s}nav header div.big-add span[b-egm6c67xt8]{transition:all .3s}nav header div.big-add:hover[b-egm6c67xt8]{background-color:#444;color:#fff;border-color:#fff}nav header div.big-add:hover span[b-egm6c67xt8]{transform:scale(1.6)}nav header a.personaLink[b-egm6c67xt8]{text-decoration:none !important}nav header a.personaLink span[b-egm6c67xt8]{display:flex;width:75px;height:75px;margin:0 auto;border-radius:50%;border:3px solid #fff;color:#fff;justify-content:center;align-items:center;font-size:18pt;background-color:#666;font-weight:bold;transition:background-color ease-in-out .3s}nav header a.personaLink:hover span[b-egm6c67xt8]{background-color:#999}nav content[b-egm6c67xt8]{grid-row:content;overflow-y:scroll;scrollbar-width:none;-ms-overflow-style:none;display:grid;grid-template-columns:1fr 1fr 1fr;grid-template-rows:100px 100px 100px}nav content [b-egm6c67xt8]::-webkit-scrollbar{width:0;height:0}@media screen and (min-width: 1000px){nav content[b-egm6c67xt8]{display:flex;flex-direction:column;gap:15px}}@media screen and (min-width: 1500px){nav content[b-egm6c67xt8]{gap:25px}}nav footer[b-egm6c67xt8]{grid-row:navfooter;overflow:hidden;justify-content:center;align-items:center}nav footer img.desktop[b-egm6c67xt8]{width:50px;height:75px;display:none}@media screen and (min-width: 800px){nav footer img.desktop[b-egm6c67xt8]{display:inline-block}}nav footer img.mobile[b-egm6c67xt8]{width:100px;height:75px}@media screen and (min-width: 800px){nav footer img.mobile[b-egm6c67xt8]{display:none}}a.persona img[b-egm6c67xt8]{width:75px;height:75px;object-fit:contain;margin:20px auto;border-radius:50%;border:3px solid #fff}[b-egm6c67xt8] a.icon{color:#979797;--veleo-icon-size: 24pt;--veleo-icon-color: #979797;--veleo-icon-color-hover: white ;text-decoration:none;display:block;transition:color ease-in-out .2s,border-left-color ease-in-out .2s;border-left:5px solid rgba(0,0,0,0);border-right:5px solid rgba(0,0,0,0)}[b-egm6c67xt8] a.icon:hover{--veleo-icon-color: #fff;color:#fff}[b-egm6c67xt8] a.icon.active{--veleo-icon-color: #fff;color:#fff;font-weight:600}@media screen and (min-width: 1000px){[b-egm6c67xt8] a.icon.active{border-left:5px solid var(--border-color);font-weight:400}}a.icon i[b-egm6c67xt8]{margin:0;padding:0}a.icon span[b-egm6c67xt8]{display:block;text-align:center;text-transform:uppercase;font-size:8pt;line-height:9pt;margin-top:-5px}@media screen and (min-width: 1500px){a.icon span[b-egm6c67xt8]{font-size:9pt;line-height:12pt}}[b-egm6c67xt8] button.CloseMenu{position:absolute;top:15px;right:10px}@media only screen and (min-width: 1000px){[b-egm6c67xt8] button.CloseMenu{display:none}}
/* /Pages/Anonymous/FatalError.razor.rz.scp.css */
.fatalerror-wrapper[b-emyroqi22t] {
    display: grid;
    height: 100vh;
    align-content: center;
    justify-content: center;
    padding: 20px;
}

.fatalerror-card[b-emyroqi22t] {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    background-color: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 16px;
    padding: 48px 40px;
    max-width: 480px;
    gap: 16px;
}

.fatalerror-logo[b-emyroqi22t] {
    width: 180px;
    margin-bottom: 8px;
}

.fatalerror-icon[b-emyroqi22t] {
    font-size: 48px;
    color: #dd8007;
}

.fatalerror-card h1[b-emyroqi22t] {
    font-size: 22pt;
    font-weight: 700;
    color: #fff;
    margin: 0;
}

.fatalerror-card p[b-emyroqi22t] {
    font-size: 11pt;
    color: #aaa;
    line-height: 1.6;
    margin: 0;
}
/* /Pages/Anonymous/PendingSetup.razor.rz.scp.css */
.pendingsetup-wrapper[b-uovuqcmjah] {
    display: grid;
    height: 100vh;
    align-content: center;
    justify-content: center;
    padding: 20px;
}

.pendingsetup-card[b-uovuqcmjah] {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    background-color: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 16px;
    padding: 48px 40px;
    max-width: 480px;
    gap: 16px;
}

.pendingsetup-logo[b-uovuqcmjah] {
    width: 180px;
    margin-bottom: 8px;
}

.pendingsetup-icon[b-uovuqcmjah] {
    font-size: 48px;
    color: #0FA4AF;
}

.pendingsetup-card h1[b-uovuqcmjah] {
    font-size: 22pt;
    font-weight: 700;
    color: #fff;
    margin: 0;
}

.pendingsetup-card p[b-uovuqcmjah] {
    font-size: 11pt;
    color: #aaa;
    line-height: 1.6;
    margin: 0;
}
/* /Pages/Anonymous/Unauthorized.razor.rz.scp.css */
.unauthorized-wrapper[b-vtnd2h17uc] {
    display: grid;
    height: 100vh;
    align-content: center;
    justify-content: center;
    padding: 20px;
}

.unauthorized-card[b-vtnd2h17uc] {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    background-color: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 16px;
    padding: 48px 40px;
    max-width: 480px;
    gap: 16px;
}

.unauthorized-logo[b-vtnd2h17uc] {
    width: 180px;
    margin-bottom: 8px;
}

.unauthorized-icon[b-vtnd2h17uc] {
    font-size: 48px;
    color: #d52661;
}

.unauthorized-card h1[b-vtnd2h17uc] {
    font-size: 22pt;
    font-weight: 700;
    color: #fff;
    margin: 0;
}

.unauthorized-card p[b-vtnd2h17uc] {
    font-size: 11pt;
    color: #aaa;
    line-height: 1.6;
    margin: 0;
}

.unauthorized-user[b-vtnd2h17uc] {
    font-size: 10pt;
    color: #888;
    background-color: rgba(255, 255, 255, 0.06);
    border-radius: 20px;
    padding: 6px 16px;
}
/* /Pages/Anonymous/VeleoOffline.razor.rz.scp.css */
/* /Pages/Secure/Contacts/Companies.razor.rz.scp.css */
/* /Pages/Secure/Contacts/CompanyProfile/CompanyProfile.razor.rz.scp.css */
.companyOverview[b-xbngzgre7e]{
	color: #555;
	margin-top: 10px;
}
.no-configuration-group[b-xbngzgre7e] {
	color: #999;
	font-style: italic;
}
/* /Pages/Secure/Contacts/CompanyProfile/Components/CompanyOverviewTab.razor.rz.scp.css */
/*
 * The company overview - this screen's own layout.
 *
 * The card shell, the summary strip, the chips, the pills, the meters, the row states and the buttons
 * all come from the shared record-card primitives in Styles/Components/_recordCard.scss, which the
 * contact Overview, Activity and Opportunities screens compose alike. What is left here is the column
 * widths and the handful of cells only this screen has.
 *
 * No literal colours, sizes or radii - everything resolves through the tokens in _recordTokens.scss
 * and the type scale in _typography.scss.
 */

.company-overview[b-zly1scqtef] {
	display: flex;
	flex-direction: column;
	gap: 24px;
}

/* =================================================================================================
   2) What their people hold
   ================================================================================================= */

/* Declared once on the card and applied to the column header row and every data row, so the two
   cannot drift apart. */
.plans[b-zly1scqtef] {
	--plans-col-plan: 280px;
	--plans-col-held: 104px;
	--plans-col-value: 190px;
}

.plans__col--plan[b-zly1scqtef] {
	width: var(--plans-col-plan);
	box-sizing: border-box;
	flex: none;
}

.plans__col--uptake[b-zly1scqtef] {
	flex: 1;
	min-width: 0;
}

.plans__col--held[b-zly1scqtef] {
	width: var(--plans-col-held);
	box-sizing: border-box;
	flex: none;
}

.plans__col--value[b-zly1scqtef] {
	width: var(--plans-col-value);
	box-sizing: border-box;
	flex: none;
}

/* Both stat cells carry a sentence under the figure rather than a single word, so they run wider
   than the Activity page's. */
.plans__stat[b-zly1scqtef] {
	width: 232px;
}

/* -- rows -------------------------------------------------------------------------------------- */

.plans__plan[b-zly1scqtef] {
	display: flex;
	flex-direction: column;
	gap: 8px;
	min-width: 0;
	padding-right: 8px;
}

.plans__pills[b-zly1scqtef] {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: var(--rc-pill-gap);
}

.plans__site[b-zly1scqtef] {
	font-weight: var(--font-weight-regular);
	font-size: var(--font-size-tiny);
	line-height: var(--line-height-snug);
	color: var(--rc-text-faint);
}

/* A plan nobody holds any more stays on the card as history. Faded rather than hidden: "twelve people
   used to be on this and none are now" is the single most useful row on the card. */
.plans__row--historic .plans__plan[b-zly1scqtef],
.plans__row--historic .plans__uptake[b-zly1scqtef],
.plans__row--historic .plans__held[b-zly1scqtef],
.plans__row--historic .plans__value[b-zly1scqtef] {
	opacity: .6;
}

.plans__uptake[b-zly1scqtef] {
	display: flex;
	flex-direction: column;
	gap: 7px;
	min-width: 0;
	padding-right: 12px;
}

.plans__meter-head[b-zly1scqtef],
.plans__meter-foot[b-zly1scqtef] {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 12px;
}

.plans__meter-label[b-zly1scqtef] {
	font-weight: var(--font-weight-medium);
	font-size: var(--font-size-small);
	line-height: var(--line-height-snug);
	color: var(--rc-ink);
}

.plans__meter-value[b-zly1scqtef] {
	font-weight: var(--font-weight-semibold);
	font-size: var(--font-size-tiny);
	line-height: var(--line-height-snug);
	color: var(--rc-text-secondary);
	white-space: nowrap;
}

.plans__meter-foot[b-zly1scqtef] {
	font-weight: var(--font-weight-regular);
	font-size: var(--font-size-tiny);
	line-height: var(--line-height-snug);
	color: var(--rc-text-faint);
}

.plans__held[b-zly1scqtef] {
	display: flex;
	flex-direction: column;
	gap: 2px;
	min-width: 0;
}

.plans__held-label[b-zly1scqtef] {
	font-weight: var(--font-weight-regular);
	font-size: var(--font-size-tiny);
	line-height: var(--line-height-snug);
	color: var(--rc-text-faint);
}

.plans__value[b-zly1scqtef] {
	display: flex;
	flex-direction: column;
	gap: 4px;
	min-width: 0;
}

/* =================================================================================================
   3) Their people
   ================================================================================================= */

.people[b-zly1scqtef] {
	--people-col-person: 296px;
	--people-col-plan: 236px;
	--people-col-visit: 132px;
}

.people__col--person[b-zly1scqtef] {
	width: var(--people-col-person);
	box-sizing: border-box;
	flex: none;
}

.people__col--plan[b-zly1scqtef] {
	width: var(--people-col-plan);
	box-sizing: border-box;
	flex: none;
}

.people__col--engagement[b-zly1scqtef] {
	flex: 1;
	min-width: 0;
}

.people__col--visit[b-zly1scqtef] {
	width: var(--people-col-visit);
	box-sizing: border-box;
	flex: none;
}

.people__filters[b-zly1scqtef] {
	padding: 16px var(--rc-gutter);
	border-bottom: 1px solid var(--rc-border-section);
}

/* -- person ------------------------------------------------------------------------------------ */

.people__person[b-zly1scqtef] {
	display: flex;
	align-items: center;
	gap: 12px;
	min-width: 0;
	padding-right: 8px;
}

.people__person-text[b-zly1scqtef] {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 5px;
	min-width: 0;
}

.people__person-name[b-zly1scqtef] {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: var(--rc-pill-gap);
}

.people__person-contact[b-zly1scqtef] {
	font-weight: var(--font-weight-regular);
	font-size: var(--font-size-tiny);
	line-height: var(--line-height-snug);
	color: var(--rc-text-faint);
	overflow-wrap: anywhere;
}

/* -- holds ------------------------------------------------------------------------------------- */

.people__plan[b-zly1scqtef] {
	display: flex;
	flex-direction: column;
	gap: 6px;
	min-width: 0;
	padding-right: 12px;
}

.people__plan-name[b-zly1scqtef] {
	font-weight: var(--font-weight-semibold);
	font-size: var(--font-size-small);
	line-height: var(--line-height-snug);
	color: var(--rc-ink);
	overflow-wrap: anywhere;
}

.people__pills[b-zly1scqtef] {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: var(--rc-pill-gap);
}

.people__plan-detail[b-zly1scqtef] {
	font-weight: var(--font-weight-regular);
	font-size: var(--font-size-tiny);
	line-height: var(--line-height-snug);
	color: var(--rc-text-faint);
}

/* -- engagement -------------------------------------------------------------------------------- */

.people__engagement[b-zly1scqtef] {
	display: flex;
	flex-direction: column;
	gap: 7px;
	min-width: 0;
	padding-right: 12px;
}

.people__meter-head[b-zly1scqtef] {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
}

.people__meter-value[b-zly1scqtef] {
	font-weight: var(--font-weight-semibold);
	font-size: var(--font-size-small);
	line-height: var(--line-height-flat);
	font-variant-numeric: tabular-nums;
	white-space: nowrap;
}

.people__meter-foot[b-zly1scqtef] {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 12px;
	font-weight: var(--font-weight-regular);
	font-size: var(--font-size-tiny);
	line-height: var(--line-height-snug);
	color: var(--rc-text-faint);
}

.people__meter-trend[b-zly1scqtef] {
	white-space: nowrap;
}

/* -- last visit -------------------------------------------------------------------------------- */

.people__visit[b-zly1scqtef] {
	display: flex;
	flex-direction: column;
	gap: 3px;
	min-width: 0;
}

.people__visit-value[b-zly1scqtef] {
	font-weight: var(--font-weight-semibold);
	font-size: var(--font-size-small);
	line-height: var(--line-height-snug);
}

.people__visit-detail[b-zly1scqtef] {
	font-weight: var(--font-weight-regular);
	font-size: var(--font-size-tiny);
	line-height: var(--line-height-snug);
	color: var(--rc-text-faint);
}

/* The one-line read on a link that is not plainly approved: how long the request has been sitting,
   or who turned it down. Quiet, because most rows have nothing to say here at all - the full trail
   is a row click away in the detail panel. */
.people__approval-detail[b-zly1scqtef] {
	font-weight: var(--font-weight-regular);
	font-size: var(--font-size-tiny);
	line-height: var(--line-height-snug);
	color: var(--rc-text-tertiary);
}

/* =================================================================================================
   Phones

   The shared layer relaxes the card shell; these are this screen's own columns. Both lists turn into
   stacked blocks rather than holding desktop widths, which is what would otherwise push the card
   wider than the screen.
   ================================================================================================= */

@media screen and (max-width: 800px) {

	.company-overview[b-zly1scqtef] {
		gap: 16px;
	}

	.plans__stat[b-zly1scqtef] {
		width: auto;
	}

	.plans__row[b-zly1scqtef],
	.people__row[b-zly1scqtef] {
		flex-wrap: wrap;
		gap: 12px;
	}

	.plans__col--plan[b-zly1scqtef],
	.plans__col--uptake[b-zly1scqtef],
	.plans__col--held[b-zly1scqtef],
	.plans__col--value[b-zly1scqtef],
	.people__col--person[b-zly1scqtef],
	.people__col--plan[b-zly1scqtef],
	.people__col--engagement[b-zly1scqtef],
	.people__col--visit[b-zly1scqtef] {
		width: 100%;
		flex: 1 1 100%;
		padding-right: 0;
	}

	.plans__held[b-zly1scqtef] {
		flex-direction: row;
		align-items: baseline;
		gap: 6px;
	}

	.people__visit[b-zly1scqtef] {
		flex-direction: row;
		align-items: baseline;
		gap: 6px;
	}

	/* The column header row describes columns that no longer exist once the rows have stacked. */
	.plans .rc-columns[b-zly1scqtef],
	.people .rc-columns[b-zly1scqtef] {
		display: none;
	}
}
/* /Pages/Secure/Contacts/Components/FilesTab.razor.rz.scp.css */
/*
 * Files and forms - this screen's own layout.
 *
 * The card shell, the summary strip, the chips, the pills, the section dividers, the row states, the
 * buttons and the select control all come from the shared record-card primitives in
 * Styles/Components/_recordCard.scss, which this screen, the memberships grid, Opportunities and
 * Activity compose alike. What is left here is the column widths, the file-kind tile tints, the
 * selection checkbox and the colour swatch grid.
 *
 * No literal colours, sizes or radii - everything resolves through the tokens in _recordTokens.scss.
 * The one exception is the dominant-colour swatches, which are sampled from the uploaded image and are
 * data; they are applied inline from the markup, never declared here.
 */

.files-tab[b-kp54webmrk] {
	display: flex;
	flex-direction: column;
	gap: 24px;
}

/* ---------------------------------------------------------------------------------------------
   Files - columns

   Declared once and applied to the header row and every data row, so the two cannot drift apart. The
   image columns only exist when the host asked for them, so their widths are set on a modifier rather
   than reserved on every screen.
   --------------------------------------------------------------------------------------------- */

.files[b-kp54webmrk] {
	--files-col-select: 24px;
	--files-col-dimensions: 104px;
	--files-col-colours: 74px;
	--files-col-uploaded: 148px;
	--files-col-by: 178px;
}

.files__col--file[b-kp54webmrk] {
	flex: 1;
	min-width: 0;
}

.files__col--select[b-kp54webmrk] {
	width: var(--files-col-select);
	box-sizing: border-box;
	flex: none;
}

.files__col--dimensions[b-kp54webmrk] {
	width: var(--files-col-dimensions);
	box-sizing: border-box;
	flex: none;
}

.files__col--colours[b-kp54webmrk] {
	width: var(--files-col-colours);
	box-sizing: border-box;
	flex: none;
}

.files__col--uploaded[b-kp54webmrk] {
	width: var(--files-col-uploaded);
	box-sizing: border-box;
	flex: none;
}

.files__col--by[b-kp54webmrk] {
	width: var(--files-col-by);
	box-sizing: border-box;
	flex: none;
}

/* ---------------------------------------------------------------------------------------------
   Files - summary strip
   --------------------------------------------------------------------------------------------- */

.files__stat[b-kp54webmrk] {
	width: 190px;
}

/* "3 days ago" is not a figure. It sits in the figure slot because it answers the same question a
   number would, but it needs the size of a heading rather than the size of a total. */
.files__stat-figure--text[b-kp54webmrk] {
	font-size: var(--font-size-medium);
}

/* ---------------------------------------------------------------------------------------------
   Files - filters and sort
   --------------------------------------------------------------------------------------------- */

.files__filters[b-kp54webmrk] {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 14px;
	padding: 16px var(--rc-gutter);
	border-bottom: 1px solid var(--rc-border-section);
}

.files__filters-right[b-kp54webmrk] {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-left: auto;
}

/* ---------------------------------------------------------------------------------------------
   Files - rows
   --------------------------------------------------------------------------------------------- */

.files__row[b-kp54webmrk] {
	padding-top: var(--rc-row-padding-y-dense);
	padding-bottom: var(--rc-row-padding-y-dense);
}

/* -- the file itself --------------------------------------------------------------------------- */

.files__file[b-kp54webmrk] {
	display: flex;
	align-items: center;
	gap: 13px;
	min-width: 0;
	padding-right: 8px;
}

/* The 32px type icons already shipped with the product; the tile is the shared 30x30 primitive with
   one of them dropped into it, tinted by kind so a list of mixed attachments reads as groups. */
.files__tile img[b-kp54webmrk] {
	display: block;
}

.files__tile--image[b-kp54webmrk] { background: var(--rc-type-activity-bg); }
.files__tile--document[b-kp54webmrk] { background: var(--rc-type-class-bg); }
.files__tile--media[b-kp54webmrk] { background: var(--rc-type-course-bg); }
.files__tile--other[b-kp54webmrk] { background: var(--rc-type-admission-bg); }

.files__file-text[b-kp54webmrk] {
	display: flex;
	flex-direction: column;
	gap: 3px;
	min-width: 0;
}

.files__name[b-kp54webmrk] {
	overflow-wrap: anywhere;
}

.files__meta[b-kp54webmrk] {
	font-weight: var(--font-weight-regular);
	font-size: var(--font-size-tiny);
	line-height: 1.35;
	color: var(--rc-text-faint);
}

/* -- dimensions and colours -------------------------------------------------------------------- */

.files__dimensions[b-kp54webmrk] {
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.files__dimensions-value[b-kp54webmrk] {
	font-weight: var(--font-weight-medium);
	font-size: var(--font-size-small);
	line-height: 1.25;
	color: var(--rc-ink);
}

.files__dimensions-unit[b-kp54webmrk] {
	font-weight: var(--font-weight-regular);
	font-size: var(--font-size-tiny);
	line-height: 1.3;
	color: var(--rc-text-faint);
}

/* Four corner samples in a 2x2 block, in the order the image was read: top row, then bottom row. */
.files__colours[b-kp54webmrk] {
	display: grid;
	grid-template-columns: repeat(2, 13px);
	grid-template-rows: repeat(2, 13px);
	gap: 2px;
}

.files__colours span[b-kp54webmrk] {
	border-radius: var(--rc-radius-marker);
	border: 1px solid var(--rc-border-section);
}

/* Everything a row has no value for says so with the same mark, so a gap always reads as "nothing to
   show" rather than as a rendering fault. */
.files__absent[b-kp54webmrk] {
	font-weight: var(--font-weight-regular);
	font-size: var(--font-size-small);
	line-height: 1.25;
	color: var(--rc-text-label);
}

/* -- uploaded ---------------------------------------------------------------------------------- */

.files__uploaded[b-kp54webmrk] {
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.files__uploaded-date[b-kp54webmrk] {
	font-weight: var(--font-weight-medium);
	font-size: var(--font-size-small);
	line-height: 1.25;
	color: var(--rc-ink);
}

.files__uploaded-time[b-kp54webmrk] {
	font-weight: var(--font-weight-regular);
	font-size: var(--font-size-tiny);
	line-height: 1.3;
	color: var(--rc-text-faint);
}

/* -- added by ---------------------------------------------------------------------------------- */

/* The cell holds the shared Avatar and nothing else, so it only has to centre it. The Avatar carries
   its own 44px column and its own gap to the name; a gap declared here as well would push the picture
   off the alignment every other avatar in the product keeps. */
.files__by[b-kp54webmrk] {
	display: flex;
	align-items: center;
	min-width: 0;
}

/* A file with nobody recorded against it. Said in words rather than drawn as an initials circle -
   there is no person to put a face to, and a circle unique to this column is what made the column
   look unlike the rest of the product. Matches "Unassigned" on Opportunities. */
.files__unattributed[b-kp54webmrk] {
	font-weight: var(--font-weight-regular);
	font-size: var(--font-size-small);
	line-height: 1.25;
	color: var(--rc-text-faint);
}

/* -- selection --------------------------------------------------------------------------------- */

/* The whole row toggles, so the box is an indicator rather than a control - it takes no clicks of its
   own, which is why it is a span and not an input. */
.files__checkbox[b-kp54webmrk] {
	width: 17px;
	height: 17px;
	box-sizing: border-box;
	border-radius: var(--rc-radius-swatch);
	border: 1px solid var(--rc-border-button);
	background: var(--rc-surface);
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--rc-surface);
	transition: background-color .12s ease-in-out, border-color .12s ease-in-out;
}

.files__checkbox--checked[b-kp54webmrk] {
	background: var(--rc-navy);
	border-color: var(--rc-navy);
}

.files__row--selected[b-kp54webmrk] {
	background: var(--rc-surface-strip);
}

/* Delete is destructive, so it wears the danger tone rather than the neutral secondary one - but stays
   the secondary *size*, because it sits in a row of header buttons. */
.files__button--danger[b-kp54webmrk] {
	background: var(--rc-danger-bg);
	border-color: var(--rc-danger-border);
	color: var(--rc-danger-fg);
}

.files__button--danger:hover:not(:disabled)[b-kp54webmrk] {
	background: var(--rc-danger-wash);
	border-color: var(--rc-danger-border-strong);
}

/* ---------------------------------------------------------------------------------------------
   Forms - columns
   --------------------------------------------------------------------------------------------- */

.forms[b-kp54webmrk] {
	--forms-col-when: 196px;
}

.forms__col--form[b-kp54webmrk] {
	flex: 1;
	min-width: 0;
}

.forms__col--sent[b-kp54webmrk],
.forms__col--completed[b-kp54webmrk] {
	width: var(--forms-col-when);
	box-sizing: border-box;
	flex: none;
}

/* ---------------------------------------------------------------------------------------------
   Forms - rows
   --------------------------------------------------------------------------------------------- */

.forms__form[b-kp54webmrk] {
	display: flex;
	align-items: flex-start;
	gap: 13px;
	min-width: 0;
	padding-right: 8px;
}

.forms__tile i[b-kp54webmrk] {
	font-size: var(--font-size-normal);
	font-weight: var(--font-weight-bold);
}

.forms__tile--completed[b-kp54webmrk] {
	background: var(--rc-positive-bg);
	color: var(--rc-positive-fg);
}

.forms__tile--awaiting[b-kp54webmrk] {
	background: var(--rc-warning-bg);
	color: var(--rc-warning-fg);
}

.forms__form-text[b-kp54webmrk] {
	flex: 1;
	min-width: 0;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 8px;
}

.forms__pills[b-kp54webmrk] {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--rc-pill-gap);
}

.forms__meta[b-kp54webmrk] {
	font-weight: var(--font-weight-regular);
	font-size: var(--font-size-tiny);
	line-height: 1.35;
	color: var(--rc-text-faint);
}

.forms__when[b-kp54webmrk] {
	display: flex;
	flex-direction: column;
	gap: 3px;
	padding-left: 10px;
	border-left: 1px solid var(--rc-border-column);
}

.forms__when-date[b-kp54webmrk] {
	font-weight: var(--font-weight-medium);
	font-size: var(--font-size-small);
	line-height: 1.25;
	color: var(--rc-ink);
}

.forms__when-detail[b-kp54webmrk] {
	font-weight: var(--font-weight-regular);
	font-size: var(--font-size-tiny);
	line-height: 1.3;
	color: var(--rc-text-faint);
}

/* ---------------------------------------------------------------------------------------------
   Narrow screens

   Only the file and form columns flex, so below roughly a laptop width the fixed ones stop fitting.
   Rather than let them crush, the row wraps: the file or form keeps its own line and the rest flows
   underneath it. Same behaviour as Opportunities, at the same width.
   --------------------------------------------------------------------------------------------- */

@media screen and (max-width: 1100px) {
	.rc-columns[b-kp54webmrk] {
		display: none;
	}

	.files__row[b-kp54webmrk],
	.forms__row[b-kp54webmrk] {
		flex-wrap: wrap;
		gap: 14px var(--rc-column-gap);
	}

	.files__col--file[b-kp54webmrk],
	.forms__col--form[b-kp54webmrk] {
		flex: 1 1 100%;
	}

	.files__file[b-kp54webmrk],
	.forms__form[b-kp54webmrk] {
		padding-right: 0;
	}

	.forms__when[b-kp54webmrk] {
		border-left: 0;
		padding-left: 0;
	}

	.rc-strip[b-kp54webmrk] {
		flex-wrap: wrap;
	}

	.rc-strip__cell--lead[b-kp54webmrk] {
		flex: 1 1 100%;
	}
}

/* Phones. See HoldingsGrid.razor.css. */

@media screen and (max-width: 800px) {
	.files-tab[b-kp54webmrk] {
		gap: 16px;
	}

	.files__stat[b-kp54webmrk] {
		width: auto;
	}

	.files__col--dimensions[b-kp54webmrk],
	.files__col--colours[b-kp54webmrk],
	.files__col--uploaded[b-kp54webmrk],
	.files__col--by[b-kp54webmrk],
	.forms__col--sent[b-kp54webmrk],
	.forms__col--completed[b-kp54webmrk] {
		width: auto;
		flex: 1 1 140px;
	}

	.files__col--select[b-kp54webmrk] {
		flex: none;
	}
}
/* /Pages/Secure/Contacts/Components/NoteDisplay.razor.rz.scp.css */
.note-container[b-5ionsywgil]{

	&.clickable{
		cursor: pointer;
		
		&:hover{
			.note{
				background-color: #FAFAFA;
			}
		}
	}

	.note[b-5ionsywgil]{
		background-color: #fff;
		border: 1px solid #ccc;
		display: grid;
		grid-template-columns: 44px auto;
		align-items: center;
		overflow: clip;
		border-radius: 8px;
		transition: background-color 0.2s ease-in-out;

		.note-icon{
			color: #FFF;
			display: flex;
			align-items: center;
			justify-content: center;
			padding: 10px;
			height: 100%;

			&.foh {
				background-color: #abbb72;
			}

			&.boh[b-5ionsywgil] {
				background-color: #8272bb;
			}
		}

		.note-copy[b-5ionsywgil]{
			color: #555;
			padding: 10px;
		}
	}

	.note-footer[b-5ionsywgil]{
		font-size: 9pt;
		color: #999;
		padding-left: 54px;
	}

	/*Comments*/
	.note-comment-container[b-5ionsywgil]{
		margin-left: 44px;
		margin-top: 10px;
		margin-bottom: 10px;

		.note-comment{
			background-color: #f9f8dd;
			padding: 10px;
			border-radius: 8px;
		}

		.note-comment-footer[b-5ionsywgil]{
			font-size: 9pt;
			color: #999;
			padding-left: 11px;
		}
	}
}	
/* /Pages/Secure/Contacts/Components/NotesTab.razor.rz.scp.css */
/*
 * Notes - this screen's own layout.
 *
 * The card shell, the summary strip, the chips, the tags, the row states, the toggle, the buttons and
 * the select control all come from the shared record-card primitives in
 * Styles/Components/_recordCard.scss, which this screen, Files, Opportunities, Activity and the
 * memberships grid compose alike. What is left here is the column widths, the two note-kind tile tints
 * and the comment thread.
 *
 * No literal colours, sizes or radii - everything resolves through the tokens in _recordTokens.scss.
 */

/* ---------------------------------------------------------------------------------------------
   Columns

   Declared once and applied to the header row and every data row, so the two cannot drift apart.
   --------------------------------------------------------------------------------------------- */

.notes[b-40ea353397] {
	--notes-col-added: 148px;
	--notes-col-by: 178px;
}

.notes__col--note[b-40ea353397] {
	flex: 1;
	min-width: 0;
}

.notes__col--added[b-40ea353397] {
	width: var(--notes-col-added);
	box-sizing: border-box;
	flex: none;
}

.notes__col--by[b-40ea353397] {
	width: var(--notes-col-by);
	box-sizing: border-box;
	flex: none;
}

/* ---------------------------------------------------------------------------------------------
   Summary strip
   --------------------------------------------------------------------------------------------- */

.notes__stat[b-40ea353397] {
	width: 190px;
}

/* "3 days ago" is not a figure. It sits in the figure slot because it answers the same question a
   number would, but it needs the size of a heading rather than the size of a total. */
.notes__stat-figure--text[b-40ea353397] {
	font-size: var(--font-size-medium);
}

/* ---------------------------------------------------------------------------------------------
   Filters and sort
   --------------------------------------------------------------------------------------------- */

.notes__filters[b-40ea353397] {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 14px;
	padding: 16px var(--rc-gutter);
	border-bottom: 1px solid var(--rc-border-section);
}

.notes__filters-right[b-40ea353397] {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-left: auto;
}

/* ---------------------------------------------------------------------------------------------
   Rows

   A note is prose and a row of prose is tall, so the columns beside it align to the top of the note
   rather than to the middle of a block whose height is set by however much somebody typed.
   --------------------------------------------------------------------------------------------- */

.notes__row[b-40ea353397] {
	align-items: flex-start;
}

.notes__note[b-40ea353397] {
	display: flex;
	align-items: flex-start;
	gap: 13px;
	min-width: 0;
	padding-right: 8px;
}

/* The green and violet the two kinds have always carried, taken from the shared type-tile tokens. */
.notes__tile--foh[b-40ea353397] {
	background: var(--rc-type-course-bg);
	color: var(--rc-type-course-fg);
}

.notes__tile--boh[b-40ea353397] {
	background: var(--rc-type-activity-bg);
	color: var(--rc-type-activity-fg);
}

.notes__tile i[b-40ea353397] {
	font-size: var(--font-size-normal);
	font-weight: var(--font-weight-bold);
}

.notes__note-text[b-40ea353397] {
	flex: 1;
	min-width: 0;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 8px;
}

/* The note as typed. pre-wrap keeps the line breaks somebody entered without turning the text into
   markup on the way to the screen. */
.notes__body[b-40ea353397] {
	margin: 0;
	font-weight: var(--font-weight-regular);
	font-size: var(--font-size-normal);
	line-height: var(--line-height-relaxed);
	color: var(--rc-ink);
	white-space: pre-wrap;
	overflow-wrap: anywhere;
}

/* A deleted note is still the record - faded rather than muted, with the tag beneath it carrying what
   happened. Matches a cancelled booking on Activity. */
.notes__body--deleted[b-40ea353397] {
	color: var(--rc-ink-faded);
}

.notes__pills[b-40ea353397] {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--rc-pill-gap);
}

.notes__meta[b-40ea353397] {
	font-weight: var(--font-weight-regular);
	font-size: var(--font-size-tiny);
	line-height: 1.35;
	color: var(--rc-text-faint);
}

/* -- the comment thread -------------------------------------------------------------------------
   Comments hang off the note they answer rather than sitting beside it, so the rail down the left is
   what ties a reply to its note once a thread runs to more than one.
   ------------------------------------------------------------------------------------------------ */

.notes__thread[b-40ea353397] {
	width: 100%;
	display: flex;
	flex-direction: column;
	gap: 8px;
	padding-left: 13px;
	border-left: 2px solid var(--rc-border-divider);
}

.notes__comment[b-40ea353397] {
	display: flex;
	flex-direction: column;
	gap: 4px;
	padding: 10px 13px;
	border-radius: var(--rc-radius-control);
	background: var(--rc-surface-strip);
}

.notes__comment-body[b-40ea353397] {
	margin: 0;
	font-weight: var(--font-weight-regular);
	font-size: var(--font-size-small);
	line-height: var(--line-height-relaxed);
	color: var(--rc-text-secondary);
	white-space: pre-wrap;
	overflow-wrap: anywhere;
}

.notes__comment-footer[b-40ea353397] {
	font-weight: var(--font-weight-regular);
	font-size: var(--font-size-tiny);
	line-height: 1.3;
	color: var(--rc-text-faint);
}

/* -- added --------------------------------------------------------------------------------------- */

.notes__added[b-40ea353397] {
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.notes__added-date[b-40ea353397] {
	font-weight: var(--font-weight-medium);
	font-size: var(--font-size-small);
	line-height: 1.25;
	color: var(--rc-ink);
}

.notes__added-time[b-40ea353397] {
	font-weight: var(--font-weight-regular);
	font-size: var(--font-size-tiny);
	line-height: 1.3;
	color: var(--rc-text-faint);
}

/* -- added by ------------------------------------------------------------------------------------ */

.notes__by[b-40ea353397] {
	display: flex;
	align-items: flex-start;
	min-width: 0;
}

.notes__author[b-40ea353397] {
	font-weight: var(--font-weight-medium);
	font-size: var(--font-size-small);
	line-height: 1.25;
	color: var(--rc-ink);
	overflow-wrap: anywhere;
}

/* A note with nobody recorded against it. Said in words, matching "Unassigned" on Opportunities. */
.notes__unattributed[b-40ea353397] {
	font-weight: var(--font-weight-regular);
	font-size: var(--font-size-small);
	line-height: 1.25;
	color: var(--rc-text-faint);
}

/* The chevron sits with the columns rather than centred against a note that may run ten lines. */
.notes__row .rc-col--chevron[b-40ea353397] {
	align-self: flex-start;
	padding-top: 3px;
}

/* ---------------------------------------------------------------------------------------------
   Narrow screens

   Only the note column flexes, so below roughly a laptop width the fixed ones stop fitting. Rather
   than let them crush, the row wraps: the note keeps its own line and the rest flows underneath it.
   Same behaviour as Files and Opportunities, at the same width.
   --------------------------------------------------------------------------------------------- */

@media screen and (max-width: 1100px) {
	.rc-columns[b-40ea353397] {
		display: none;
	}

	.notes__row[b-40ea353397] {
		flex-wrap: wrap;
		gap: 14px var(--rc-column-gap);
	}

	.notes__col--note[b-40ea353397] {
		flex: 1 1 100%;
	}

	.notes__note[b-40ea353397] {
		padding-right: 0;
	}

	.rc-strip[b-40ea353397] {
		flex-wrap: wrap;
	}

	.rc-strip__cell--lead[b-40ea353397] {
		flex: 1 1 100%;
	}
}

/* Phones. See HoldingsGrid.razor.css. */

@media screen and (max-width: 800px) {
	.notes__stat[b-40ea353397] {
		width: auto;
	}

	.notes__col--added[b-40ea353397],
	.notes__col--by[b-40ea353397] {
		width: auto;
		flex: 1 1 140px;
	}
}
/* /Pages/Secure/Contacts/ContactProfile/Components/Activity/AttendanceHeatmap.razor.rz.scp.css */
.heatmap[b-h5roxh9lkb] {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.heatmap__body[b-h5roxh9lkb] {
	display: flex;
	align-items: stretch;
	gap: 6px;
}

/* 32px of gutter plus the 6px gap is the 38px the month axis indents by. Changing one means changing
   both, or the first month rule stops sitting over the first column of squares. */
.heatmap__gutter[b-h5roxh9lkb] {
	flex: none;
	width: 32px;
	display: grid;
	grid-template-rows: repeat(7, 25px);
	gap: 4px;
}

.heatmap__gutter span[b-h5roxh9lkb] {
	display: flex;
	align-items: center;
	font-weight: var(--font-weight-medium);
	font-size: var(--font-size-micro);
	line-height: 1;
	color: var(--rc-chart-gutter-label);
}

/* Column flow with 1fr columns is what makes the grid fluid: the squares stretch with the card rather
   than the grid scrolling or the last week falling off. */
.heatmap__grid[b-h5roxh9lkb] {
	flex: 1;
	min-width: 0;
	display: grid;
	grid-template-rows: repeat(7, 25px);
	grid-auto-flow: column;
	grid-auto-columns: 1fr;
	gap: 4px;
}

.heatmap__cell[b-h5roxh9lkb] {
	border-radius: var(--rc-radius-meter);
}
/* /Pages/Secure/Contacts/ContactProfile/Components/Activity/ChartMonthAxis.razor.rz.scp.css */
.months[b-dcxcwctlia] {
	display: flex;
	padding-left: 38px;
}

.months__label[b-dcxcwctlia] {
	flex: none;
	box-sizing: border-box;
	padding-left: 5px;
	font-weight: var(--font-weight-semibold);
	font-size: var(--font-size-micro);
	line-height: 1.1;
	white-space: nowrap;
	overflow: hidden;
}
/* /Pages/Secure/Contacts/ContactProfile/Components/Activity/TimeOfDayMatrix.razor.rz.scp.css */
.rhythm[b-uke8zc2kr3] {
	display: flex;
	flex-direction: column;
	gap: 6px;
}

/* 76px of row label plus the 6px gap. The header has to clear the label column or every day name sits
   one cell to the left of the column it names. */
.rhythm__head[b-uke8zc2kr3] {
	display: flex;
	gap: 6px;
	padding-left: 82px;
}

.rhythm__head span[b-uke8zc2kr3] {
	flex: 1;
	text-align: center;
	font-weight: var(--font-weight-semibold);
	font-size: var(--font-size-micro);
	line-height: 1;
	color: var(--rc-text-faint);
}

.rhythm__row[b-uke8zc2kr3] {
	display: flex;
	align-items: center;
	gap: 6px;
}

.rhythm__label[b-uke8zc2kr3] {
	flex: none;
	width: 76px;
	font-weight: var(--font-weight-medium);
	font-size: var(--font-size-tiny);
	line-height: 1.2;
	color: var(--rc-text-tertiary);
}

.rhythm__cell[b-uke8zc2kr3] {
	flex: 1;
	min-width: 0;
	height: 44px;
	border-radius: var(--rc-radius-segment);
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: var(--font-weight-semibold);
	font-size: var(--font-size-small);
	line-height: 1;
	font-variant-numeric: tabular-nums;
}
/* /Pages/Secure/Contacts/ContactProfile/Components/Activity/WeeklyCadenceChart.razor.rz.scp.css */
.cadence[b-grm1moosvb] {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

/* The same 38px indent as the heatmap, so the month rules under the two charts land in the same place
   when the operator switches between them. */
.cadence__plot[b-grm1moosvb] {
	position: relative;
	height: 214px;
	display: flex;
	align-items: flex-end;
	gap: 5px;
	padding-left: 38px;
	border-bottom: 1px solid var(--rc-chart-baseline);
}

.cadence__average[b-grm1moosvb] {
	position: absolute;
	left: 0;
	right: 0;
	height: 0;
	border-top: 1px dashed var(--rc-chart-average-line);
}

.cadence__average-label[b-grm1moosvb] {
	position: absolute;
	left: 0;
	font-weight: var(--font-weight-semibold);
	font-size: var(--font-size-micro);
	line-height: 1;
	color: var(--rc-text-faint);
}

.cadence__bar[b-grm1moosvb] {
	flex: 1;
	min-width: 0;
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	align-items: stretch;
	gap: 2px;
}

.cadence__segment[b-grm1moosvb] {
	border-radius: var(--rc-radius-swatch);
	flex: none;
}
/* /Pages/Secure/Contacts/ContactProfile/Components/ContactActivity.razor.rz.scp.css */
/*
 * The Activity page's own layout.
 *
 * Everything shared with the memberships grid - the card shell, the summary strip, the chips, the
 * status pills, the row states, the buttons - comes from the record-card primitives in
 * Styles/Components/_recordCard.scss. What is left here is this screen's column widths and the two
 * bands that are specific to it: the visualisation band and the row's own internals.
 *
 * No literal colours, sizes or radii: everything resolves through the tokens in _recordTokens.scss.
 */

/* The column widths, declared once and applied to the header row and every data row, so the two cannot
   drift apart. The chevron that closes the row is not one of them - it is the shared .rc-col--chevron,
   at the same width on every screen. */
.activity[b-jelljq58bu] {
	--activity-col-when: 118px;
	--activity-col-site: 198px;
	--activity-col-paid: 214px;
}

.activity__col--when[b-jelljq58bu] {
	width: var(--activity-col-when);
	box-sizing: border-box;
	flex: none;
}

.activity__col--what[b-jelljq58bu] {
	flex: 1;
	min-width: 0;
}

.activity__col--site[b-jelljq58bu] {
	width: var(--activity-col-site);
	box-sizing: border-box;
	flex: none;
}

.activity__col--paid[b-jelljq58bu] {
	width: var(--activity-col-paid);
	box-sizing: border-box;
	flex: none;
}

/* ---------------------------------------------------------------------------------------------
   2) Attendance profile strip

   The three fixed cells are all the same width, unlike the memberships strip - none of them carries a
   sentence, so none of them needs more room than the others.
   --------------------------------------------------------------------------------------------- */

.activity__stat[b-jelljq58bu] {
	width: 196px;
}

/* ---------------------------------------------------------------------------------------------
   3) Visualisation band
   --------------------------------------------------------------------------------------------- */

.activity__viz[b-jelljq58bu] {
	display: flex;
	align-items: stretch;
	border-bottom: 1px solid var(--rc-border-section);
}

.activity__chart[b-jelljq58bu] {
	flex: 1;
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 16px;
	padding: var(--rc-section-padding-y) var(--rc-gutter) 22px;
}

.activity__switcher[b-jelljq58bu] {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
}

/* The context panel holds the multi-site read, which stays put while the chart beside it changes.
   Moving it into each chart would mean three copies that could disagree about a site's share. */
.activity__context[b-jelljq58bu] {
	width: 286px;
	box-sizing: border-box;
	flex: none;
	display: flex;
	flex-direction: column;
	gap: 16px;
	padding: var(--rc-section-padding-y) 24px;
	border-left: 1px solid var(--rc-border-section);
	background: var(--rc-surface-subtle);
}

.activity__context-block[b-jelljq58bu] {
	display: flex;
	flex-direction: column;
	gap: 9px;
}

.activity__context-rule[b-jelljq58bu] {
	height: 1px;
	background: var(--rc-border-section);
}

.activity__legend-row[b-jelljq58bu] {
	display: flex;
	align-items: center;
	gap: 9px;
}

.activity__legend-name[b-jelljq58bu] {
	flex: 1;
	min-width: 0;
	font-weight: var(--font-weight-medium);
	font-size: var(--font-size-small);
	line-height: 1.3;
	color: var(--rc-ink);
}

.activity__legend-share[b-jelljq58bu] {
	font-weight: var(--font-weight-semibold);
	font-size: var(--font-size-small);
	line-height: 1;
	font-variant-numeric: tabular-nums;
	color: var(--rc-text-segment);
}

.activity__note[b-jelljq58bu] {
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.activity__note-value[b-jelljq58bu] {
	font-weight: var(--font-weight-semibold);
	font-size: var(--font-size-small);
	line-height: 1.3;
	color: var(--rc-ink);
}

.activity__note-label[b-jelljq58bu] {
	font-weight: var(--font-weight-regular);
	font-size: var(--font-size-tiny);
	line-height: 1.4;
	color: var(--rc-text-tertiary);
}

/* ---------------------------------------------------------------------------------------------
   4) Filter row
   --------------------------------------------------------------------------------------------- */

.activity__filters[b-jelljq58bu] {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	padding: 16px var(--rc-gutter);
	border-bottom: 1px solid var(--rc-border-section);
}

.activity__filters-right[b-jelljq58bu] {
	display: flex;
	align-items: center;
	gap: 12px;
	flex: none;
}

/* ---------------------------------------------------------------------------------------------
   6) Rows
   --------------------------------------------------------------------------------------------- */

.activity__when[b-jelljq58bu] {
	display: flex;
	flex-direction: column;
	gap: 3px;
}

.activity__date[b-jelljq58bu] {
	font-weight: var(--font-weight-semibold);
	font-size: var(--font-size-small);
	line-height: 1.2;
}

.activity__time[b-jelljq58bu] {
	font-weight: var(--font-weight-regular);
	font-size: var(--font-size-small);
	line-height: 1.2;
	font-variant-numeric: tabular-nums;
	color: var(--rc-text-hint);
}

.activity__what[b-jelljq58bu] {
	display: flex;
	align-items: flex-start;
	gap: 13px;
}

.activity__what-text[b-jelljq58bu] {
	flex: 1;
	min-width: 0;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 7px;
}

/* A cancelled booking fades its name; the status pill and the detail line under it carry which kind of
   cancellation it was. */
.activity__name[b-jelljq58bu] {
	color: var(--rc-ink);
}

.rc-row--alert .activity__name[b-jelljq58bu] {
	color: var(--rc-ink-faded);
}

/* Struck through for the three cancellations, which un-made the booking. A no-show is deliberately not
   struck: the booking stood, the person did not turn up. */
.activity__name--struck[b-jelljq58bu] {
	text-decoration: line-through;
}

.activity__detail[b-jelljq58bu] {
	font-weight: var(--font-weight-regular);
	font-size: var(--font-size-small);
	line-height: 1.35;
	color: var(--rc-text-hint);
}

.activity__detail--missed[b-jelljq58bu] {
	color: var(--rc-danger-fg);
}

.activity__paid[b-jelljq58bu] {
	display: flex;
	flex-direction: column;
	gap: 2px;
	padding-left: 10px;
	border-left: 1px solid var(--rc-border-column);
}

.activity__paid-label[b-jelljq58bu] {
	font-weight: var(--font-weight-medium);
	font-size: var(--font-size-small);
	line-height: 1.25;
}

.activity__paid-note[b-jelljq58bu] {
	font-weight: var(--font-weight-regular);
	font-size: var(--font-size-tiny);
	line-height: 1.3;
	color: var(--rc-text-faint);
}

/* ---------------------------------------------------------------------------------------------
   Narrow screens

   The design is drawn at 1180px and is fluid, but only the activity column flexes - below roughly a
   laptop width the fixed columns stop fitting. Rather than let them crush, the row wraps and the
   context panel drops under the chart instead of squeezing it to nothing.
   --------------------------------------------------------------------------------------------- */

@media screen and (max-width: 1100px) {
	.activity__viz[b-jelljq58bu] {
		flex-wrap: wrap;
	}

	.activity__context[b-jelljq58bu] {
		width: 100%;
		border-left: 0;
		border-top: 1px solid var(--rc-border-section);
	}

	.rc-columns[b-jelljq58bu] {
		display: none;
	}

	.activity__row[b-jelljq58bu] {
		flex-wrap: wrap;
		gap: 12px var(--rc-column-gap);
	}

	.activity__col--what[b-jelljq58bu] {
		flex: 1 1 100%;
	}

	.activity__paid[b-jelljq58bu] {
		border-left: 0;
		padding-left: 0;
	}

	.rc-strip[b-jelljq58bu] {
		flex-wrap: wrap;
	}

	.rc-strip__cell--lead[b-jelljq58bu] {
		flex: 1 1 100%;
	}
}

/* Phones. See HoldingsGrid.razor.css - the stat cells give up their widths and the shared shell wraps
   the strip. The when / site / paid columns go full width so nothing is read at 60px. */

@media screen and (max-width: 800px) {
	.activity__stat[b-jelljq58bu] {
		width: auto;
	}

	.activity__col--when[b-jelljq58bu],
	.activity__col--site[b-jelljq58bu],
	.activity__col--paid[b-jelljq58bu] {
		width: auto;
		flex: 1 1 140px;
	}
}
/* /Pages/Secure/Contacts/ContactProfile/Components/ContactCommunications.razor.rz.scp.css */
.comm-view-toggle[b-431d59xp3m] {
    display: flex;
    gap: 4px;
    margin-bottom: 16px;
}

.comm-view-toggle__btn[b-431d59xp3m] {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 6px 14px;
    border-radius: 20px;
    border: 1px solid var(--neutral-stroke-rest);
    background-color: transparent;
    color: var(--neutral-foreground-rest);
    font-size: var(--font-size-small);
    cursor: pointer;
    transition: background-color 150ms ease, border-color 150ms ease;
}

.comm-view-toggle__btn:hover[b-431d59xp3m] {
    background-color: var(--neutral-fill-hover);
}

.comm-view-toggle__btn.active[b-431d59xp3m] {
    background-color: var(--color-neutral-800);
    color: white;
    border-color: var(--color-neutral-800);
}

/* /Pages/Secure/Contacts/ContactProfile/Components/ContactOpportunities.razor.rz.scp.css */
/*
 * The sales opportunities tab - this screen's own layout.
 *
 * The card shell, the summary strip, the chips, the pills and tags, the section dividers, the row
 * states and the buttons all come from the shared record-card primitives in
 * Styles/Components/_recordCard.scss, which this screen, the memberships grid on Overview and the
 * Activity page compose alike. What is left here is the column widths and the interaction timeline,
 * which is the one band no other screen has.
 *
 * No literal colours, sizes or radii - everything resolves through the tokens in _recordTokens.scss.
 * The two exceptions are the stage and opportunity-type colours, which are operator-configured data
 * and arrive on the record; they are applied inline from the markup, never declared here.
 */

/* The two column widths, declared once and applied to the header row and every data row, so the two
   cannot drift apart. The chevron that closes the row is the shared .rc-col--chevron. */
.opportunities[b-q0innp67p5] {
	--opportunities-col-action: 218px;
	--opportunities-col-owner: 178px;
}

.opportunities__col--opportunity[b-q0innp67p5] {
	flex: 1;
	min-width: 0;
}

.opportunities__col--action[b-q0innp67p5] {
	width: var(--opportunities-col-action);
	box-sizing: border-box;
	flex: none;
}

.opportunities__col--owner[b-q0innp67p5] {
	width: var(--opportunities-col-owner);
	box-sizing: border-box;
	flex: none;
}

/* ---------------------------------------------------------------------------------------------
   Pipeline strip

   Three counts and a next action. The next-action cell runs wider than the counts because it carries
   a booking name rather than a number.
   --------------------------------------------------------------------------------------------- */

.opportunities__stat[b-q0innp67p5] {
	width: 186px;
}

.opportunities__stat--wide[b-q0innp67p5] {
	width: 232px;
}

/* Its own band rather than a fourth strip cell: the owner is one fact about the whole opportunity, not
   a figure to be read alongside the three that are. */
.opportunities__owner-bar[b-q0innp67p5] {
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 12px var(--rc-gutter);
	background: var(--rc-surface-subtle);
	border-bottom: 1px solid var(--rc-border-section);
}

/* ---------------------------------------------------------------------------------------------
   Filter chips
   --------------------------------------------------------------------------------------------- */

.opportunities__filters[b-q0innp67p5] {
	padding: 16px var(--rc-gutter);
	border-bottom: 1px solid var(--rc-border-section);
}

/* ---------------------------------------------------------------------------------------------
   Rows

   Three stacked lines in the opportunity cell, so the rows run at the roomier of the two named
   densities - the same as the memberships grid, rather than the Activity page's dense one.
   --------------------------------------------------------------------------------------------- */

.opportunities__row[b-q0innp67p5] {
	padding-top: var(--rc-row-padding-y);
	padding-bottom: var(--rc-row-padding-y);
}

/* -- opportunity and stage --------------------------------------------------------------------- */

.opportunities__opportunity[b-q0innp67p5] {
	display: flex;
	align-items: flex-start;
	gap: 13px;
	min-width: 0;
	padding-right: 8px;
}

/* Tinted from the type's own colour, so a tenant that colours its opportunity types can tell them
   apart down the list without reading a word. */
.opportunities__tile i[b-q0innp67p5] {
	font-size: var(--font-size-normal);
	font-weight: var(--font-weight-bold);
}

.opportunities__opportunity-text[b-q0innp67p5] {
	flex: 1;
	min-width: 0;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 8px;
}

.opportunities__pills[b-q0innp67p5] {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--rc-pill-gap);
}

.opportunities__meta[b-q0innp67p5] {
	font-weight: var(--font-weight-regular);
	font-size: var(--font-size-tiny);
	line-height: 1.35;
	color: var(--rc-text-faint);
}

/* -- next action or outcome -------------------------------------------------------------------- */

.opportunities__action[b-q0innp67p5] {
	display: flex;
	flex-direction: column;
	gap: 3px;
	padding-left: 10px;
	border-left: 1px solid var(--rc-border-column);
}

.opportunities__next[b-q0innp67p5] {
	display: flex;
	align-items: center;
	gap: 7px;
	font-weight: var(--font-weight-medium);
	font-size: var(--font-size-small);
	line-height: 1.25;
	color: var(--rc-ink);
}

.opportunities__next i[b-q0innp67p5] {
	font-size: var(--font-size-normal);
	font-weight: var(--font-weight-bold);
	flex: none;
	color: var(--rc-text-hint);
}

.opportunities__next--overdue[b-q0innp67p5],
.opportunities__next--overdue i[b-q0innp67p5] {
	color: var(--rc-danger-fg);
	font-weight: var(--font-weight-semibold);
}

.opportunities__next-label[b-q0innp67p5] {
	overflow-wrap: anywhere;
}

.opportunities__next-detail[b-q0innp67p5] {
	font-weight: var(--font-weight-regular);
	font-size: var(--font-size-tiny);
	line-height: 1.3;
	color: var(--rc-text-faint);
}

/* -- assigned to ------------------------------------------------------------------------------- */

.opportunities__owner[b-q0innp67p5] {
	display: flex;
	align-items: center;
	min-width: 0;
}

.opportunities__unassigned[b-q0innp67p5] {
	font-weight: var(--font-weight-regular);
	font-size: var(--font-size-small);
	line-height: 1.25;
	color: var(--rc-text-faint);
}

/* ---------------------------------------------------------------------------------------------
   Interaction timeline

   The detail view's whole reason to exist: what was said, when, by whom, and what it produced. Each
   interaction is one card on a rail, and anything the interaction booked sits inside that card rather
   than beside it - "we rang and booked them in" is one event, not two.
   --------------------------------------------------------------------------------------------- */

.opportunities__timeline[b-q0innp67p5] {
	display: flex;
	flex-direction: column;
	padding: var(--rc-section-padding-y) var(--rc-gutter);
	background: var(--rc-surface-subtle);
}

.opportunities__interaction[b-q0innp67p5] {
	display: flex;
	gap: 16px;
}

.opportunities__interaction-rail[b-q0innp67p5] {
	display: flex;
	flex-direction: column;
	align-items: center;
	flex: none;
}

.opportunities__interaction-icon[b-q0innp67p5] {
	width: 34px;
	height: 34px;
	flex: none;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	background: var(--rc-navy);
	color: var(--rc-surface);
}

.opportunities__interaction-icon i[b-q0innp67p5] {
	font-size: var(--font-size-medium);
	font-weight: var(--font-weight-bold);
}

/* The rail runs to the next icon, so the timeline reads as one thread. The last one has nothing to
   join, so its line collapses. */
.opportunities__interaction-line[b-q0innp67p5] {
	width: 2px;
	flex: 1;
	margin: 6px 0;
	background: var(--rc-border-divider);
}

.opportunities__interaction:last-child .opportunities__interaction-line[b-q0innp67p5] {
	display: none;
}

.opportunities__interaction-body[b-q0innp67p5] {
	flex: 1;
	min-width: 0;
	margin-bottom: 16px;
	background: var(--rc-surface);
	border: 1px solid var(--rc-border-section);
	border-radius: var(--rc-radius-control);
	box-shadow: var(--rc-shadow-card);
	overflow: hidden;
}

.opportunities__interaction:last-child .opportunities__interaction-body[b-q0innp67p5] {
	margin-bottom: 0;
}

.opportunities__interaction-meta[b-q0innp67p5] {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: var(--rc-pill-gap);
	padding: 11px 14px;
	background: var(--rc-surface-strip);
	border-bottom: 1px solid var(--rc-border-section);
}

.opportunities__interaction-date[b-q0innp67p5] {
	margin-left: auto;
	font-weight: var(--font-weight-regular);
	font-size: var(--font-size-tiny);
	line-height: 1.3;
	color: var(--rc-text-tertiary);
}

.opportunities__interaction-notes[b-q0innp67p5] {
	margin: 0;
	padding: 12px 14px;
	font-weight: var(--font-weight-regular);
	font-size: var(--font-size-small);
	line-height: 1.5;
	color: var(--rc-text-secondary);
	white-space: pre-wrap;
	overflow-wrap: anywhere;
}

.opportunities__interaction-recorded[b-q0innp67p5] {
	padding: 8px 14px;
	border-top: 1px solid var(--rc-border-row);
	background: var(--rc-surface-footer);
	font-weight: var(--font-weight-regular);
	font-size: var(--font-size-tiny);
	line-height: 1.3;
	color: var(--rc-text-faint);
}

/* -- what the interaction produced ------------------------------------------------------------- */

.opportunities__outcome[b-q0innp67p5] {
	display: flex;
	align-items: center;
	gap: 11px;
	padding: 10px 14px;
	border-top: 1px solid var(--rc-border-section);
}

.opportunities__outcome i[b-q0innp67p5] {
	font-size: var(--font-size-medium);
	font-weight: var(--font-weight-bold);
	flex: none;
}

.opportunities__outcome--followup[b-q0innp67p5] {
	background: var(--rc-positive-bg);
}

.opportunities__outcome--followup i[b-q0innp67p5],
.opportunities__outcome--followup .text-eyebrow[b-q0innp67p5] {
	color: var(--rc-positive-fg);
}

.opportunities__outcome--appointment[b-q0innp67p5] {
	background: var(--rc-info-bg);
}

.opportunities__outcome--appointment i[b-q0innp67p5],
.opportunities__outcome--appointment .text-eyebrow[b-q0innp67p5] {
	color: var(--rc-info-fg);
}

.opportunities__outcome-text[b-q0innp67p5] {
	display: flex;
	flex-direction: column;
	gap: 4px;
	flex: 1;
	min-width: 0;
}

.opportunities__outcome-value[b-q0innp67p5] {
	font-weight: var(--font-weight-medium);
	font-size: var(--font-size-small);
	line-height: 1.35;
	color: var(--rc-ink);
}

/* ---------------------------------------------------------------------------------------------
   Narrow screens

   Only the opportunity column flexes, so below roughly a laptop width the two fixed columns stop
   fitting. Rather than let them crush, the row wraps: the opportunity keeps its own line and the next
   action and owner flow underneath it.
   --------------------------------------------------------------------------------------------- */

@media screen and (max-width: 1100px) {
	.rc-columns[b-q0innp67p5] {
		display: none;
	}

	.opportunities__row[b-q0innp67p5] {
		flex-wrap: wrap;
		gap: 14px var(--rc-column-gap);
	}

	.opportunities__col--opportunity[b-q0innp67p5] {
		flex: 1 1 100%;
	}

	.opportunities__opportunity[b-q0innp67p5] {
		padding-right: 0;
	}

	.opportunities__action[b-q0innp67p5] {
		border-left: 0;
		padding-left: 0;
	}

	.rc-strip[b-q0innp67p5] {
		flex-wrap: wrap;
	}

	.rc-strip__cell--lead[b-q0innp67p5] {
		flex: 1 1 100%;
	}
}

/* Phones. See HoldingsGrid.razor.css. The timeline loses its gutter too - a 34px rail and a 26px
   gutter is half the width of a phone before any text is set. */

@media screen and (max-width: 800px) {
	.opportunities__stat[b-q0innp67p5],
	.opportunities__stat--wide[b-q0innp67p5] {
		width: auto;
	}

	.opportunities__col--action[b-q0innp67p5],
	.opportunities__col--owner[b-q0innp67p5] {
		width: auto;
		flex: 1 1 140px;
	}

	.opportunities__timeline[b-q0innp67p5] {
		padding: 16px 14px;
	}

	.opportunities__interaction[b-q0innp67p5] {
		gap: 10px;
	}
}
/* /Pages/Secure/Contacts/ContactProfile/Components/ContactOverview.razor.rz.scp.css */
/*
 * Styles for the contact overview tab.
 *
 * The holdings styles that used to live here have moved to HoldingsGrid.razor.css along with the markup
 * they dressed. What is left is the spacing between the KPI row and the grid.
 */

.overview-container[b-tp2kmnwyp4] {
	display: flex;
	flex-direction: column;
	gap: 24px;
}
/* /Pages/Secure/Contacts/ContactProfile/Components/ContactTimeline.razor.rz.scp.css */
.timeline-container[b-705ni18tzv] {
	
}

/* Header */
.timeline-header[b-705ni18tzv] {
	margin-bottom: 30px;
}

.timeline-title[b-705ni18tzv] {
	margin-bottom: 20px;
}

/* Filters */
.timeline-filters[b-705ni18tzv] {
	margin-bottom: 20px;
}

.filter-chips[b-705ni18tzv] {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.filter-chip[b-705ni18tzv] {
	display: flex;
	align-items: center;
	gap: 6px;
	padding: 8px 16px;
	border: 2px solid #E5E7EB;
	background: #ffffff;
	border-radius: 20px;
	font-size: var(--font-size-normal);
	font-weight: var(--font-weight-medium);
	color: #6B7280;
	cursor: pointer;
	transition: all 0.2s ease;
}

.filter-chip:hover[b-705ni18tzv] {
	border-color: #044466;
	color: #044466;
	background: #F3F4F6;
}

.filter-chip.active[b-705ni18tzv] {
	border-color: #044466;
	background: #044466;
	color: #ffffff;
}

.filter-chip span[class*="iconoir"][b-705ni18tzv] {
	font-size: var(--font-size-medium);
}

/* Timeline Content */
.timeline-content[b-705ni18tzv] {
	position: relative;
}

.timeline[b-705ni18tzv] {
	position: relative;
	padding: 0;
}

/* Timeline Item */
.timeline-item[b-705ni18tzv] {
	display: flex;
	gap: 20px;
	margin-bottom: 20px;
	position: relative;
}

.timeline-item:last-child .timeline-line[b-705ni18tzv] {
	display: none;
}

/* Timeline Marker */
.timeline-marker[b-705ni18tzv] {
	display: flex;
	flex-direction: column;
	align-items: center;
	flex-shrink: 0;
	position: relative;
}

.timeline-icon[b-705ni18tzv] {
	width: 44px;
	height: 44px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #ffffff;
	font-size: var(--font-size-xlarge);
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
	z-index: 1;
}

.timeline-line[b-705ni18tzv] {
	width: 2px;
	flex-grow: 1;
	background: linear-gradient(to bottom, rgba(0,0,0,0.1) 0%, rgba(0,0,0,0.05) 100%);
	min-height: 40px;
	margin-top: 8px;
}

/* Timeline Card */
.timeline-card[b-705ni18tzv] {
	flex: 1;
	background: #ffffff;
	border: 1px solid #E5E7EB;
	border-radius: 12px;
	overflow: hidden;
	transition: all 0.2s ease;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
}

.timeline-card:hover[b-705ni18tzv] {
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
	transform: translateY(-2px);
}

.timeline-card-header[b-705ni18tzv] {
	padding: 16px 20px;
	background: #F9FAFB;
	border-bottom: 1px solid #E5E7EB;
}

.timeline-card-title[b-705ni18tzv] {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 8px;
	flex-wrap: wrap;
}

.timeline-card-title h4[b-705ni18tzv] {
	margin: 0;
	font-size: var(--font-size-medium);
	font-weight: var(--font-weight-semibold);
	color: #1F2937;
}

.timeline-card-date[b-705ni18tzv] {
	display: flex;
	align-items: center;
	gap: 6px;
	font-size: var(--font-size-small);
	color: #6B7280;
}

.timeline-card-date .iconoir[b-705ni18tzv] {
	font-size: var(--font-size-normal);
}

.timeline-card-date .time[b-705ni18tzv] {
	margin-left: 4px;
	font-weight: var(--font-weight-medium);
	color: #9CA3AF;
}

.timeline-card-body[b-705ni18tzv] {
	padding: 16px 20px;
}

.timeline-card-body p[b-705ni18tzv] {
	margin: 0 0 12px 0;
	color: #4B5563;
	line-height: 1.5;
}

.timeline-detail[b-705ni18tzv] {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-top: 8px;
	font-size: var(--font-size-normal);
	color: #6B7280;
}

.timeline-detail .iconoir[b-705ni18tzv] {
	font-size: var(--font-size-medium);
	color: #9CA3AF;
}

.timeline-detail.amount[b-705ni18tzv] {
	font-weight: var(--font-weight-semibold);
}

.timeline-detail .positive[b-705ni18tzv] {
	color: #10B981;
}

.timeline-detail .negative[b-705ni18tzv] {
	color: #EF4444;
}

.timeline-tags[b-705ni18tzv] {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin-top: 12px;
}

.timeline-tag[b-705ni18tzv] {
	display: inline-block;
	padding: 4px 10px;
	background: #F3F4F6;
	border: 1px solid #E5E7EB;
	border-radius: 12px;
	font-size: var(--font-size-small);
	color: #6B7280;
	font-weight: var(--font-weight-medium);
}

.timeline-card-footer[b-705ni18tzv] {
	padding: 12px 20px;
	background: #F9FAFB;
	border-top: 1px solid #E5E7EB;
}

/* Status Badges */
.status-badge[b-705ni18tzv] {
	display: inline-block;
	padding: 4px 12px;
	border-radius: 12px;
	font-size: var(--font-size-small);
	font-weight: var(--font-weight-semibold);
	text-transform: uppercase;
	letter-spacing: 0.5px;
}

.status-confirmed[b-705ni18tzv] {
	background: #DBEAFE;
	color: #1E40AF;
}

.status-completed[b-705ni18tzv] {
	background: #D1FAE5;
	color: #065F46;
}

.status-cancelled[b-705ni18tzv] {
	background: #FEE2E2;
	color: #991B1B;
}

.status-pending[b-705ni18tzv] {
	background: #FEF3C7;
	color: #92400E;
}

.status-attended[b-705ni18tzv] {
	background: #D1FAE5;
	color: #065F46;
}

.status-no-show[b-705ni18tzv] {
	background: #FEE2E2;
	color: #991B1B;
}

.status-default[b-705ni18tzv] {
	background: #F3F4F6;
	color: #4B5563;
}

/* Empty State */
.timeline-empty[b-705ni18tzv] {
	padding: 60px 20px;
	text-align: center;
}

.empty-state[b-705ni18tzv] {
	max-width: 400px;
	margin: 0 auto;
}

/* A glyph, not text - the type scale does not run this far and should not. */
.empty-icon[b-705ni18tzv] {
	font-size: 64px;
	color: #D1D5DB;
	margin-bottom: 16px;
	display: block;
}

.empty-state h3[b-705ni18tzv] {
	margin: 0 0 8px 0;
	font-size: var(--font-size-large);
	font-weight: var(--font-weight-semibold);
	color: #6B7280;
}

.empty-state p[b-705ni18tzv] {
	margin: 0;
	font-size: var(--font-size-normal);
	color: #9CA3AF;
}

/* Responsive Design */
@media (max-width: 768px) {
	.timeline-container[b-705ni18tzv] {
		padding: 16px;
	}

	.filter-chips[b-705ni18tzv] {
		gap: 8px;
	}

	.filter-chip[b-705ni18tzv] {
		padding: 6px 12px;
		font-size: var(--font-size-small);
	}

	.timeline-item[b-705ni18tzv] {
		gap: 12px;
	}

	.timeline-icon[b-705ni18tzv] {
		width: 36px;
		height: 36px;
		font-size: var(--font-size-medium);
	}

	.timeline-card-header[b-705ni18tzv],
	.timeline-card-body[b-705ni18tzv],
	.timeline-card-footer[b-705ni18tzv] {
		padding: 12px 16px;
	}

	.timeline-card-title[b-705ni18tzv] {
		flex-direction: column;
		align-items: flex-start;
	}

	.timeline-card-title h4[b-705ni18tzv] {
		font-size: var(--font-size-normal);
	}
}

/* Animations */
@keyframes slideIn-b-705ni18tzv {
	from {
		opacity: 0;
		transform: translateY(20px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

.timeline-item[b-705ni18tzv] {
	animation: slideIn-b-705ni18tzv 0.3s ease-out;
}

/* Print Styles */
@media print {
	.timeline-filters[b-705ni18tzv] {
		display: none;
	}

	.timeline-card[b-705ni18tzv] {
		break-inside: avoid;
		box-shadow: none;
		border: 1px solid #E5E7EB;
	}

	.timeline-card:hover[b-705ni18tzv] {
		transform: none;
		box-shadow: none;
	}
}
/* /Pages/Secure/Contacts/ContactProfile/Components/FamilyMemberLink.razor.rz.scp.css */
.family-member-link[b-0wfjar3y2t]{
	display: flex;
	flex-direction: column;
	width: 60px;
	align-items: center;
	text-decoration: none;
	
	.profile-circle{
		width: 48px;
		height: 48px;
		/*border-radius: 50%;*/
		align-items: center;
		justify-content: center;
		color: #fff;
		font-weight: bold;
		display: flex;
	}

	&:hover .profile-circle[b-0wfjar3y2t]{
		opacity: 0.8;
	}
	
	.name[b-0wfjar3y2t]{
		/*width: 68px;*/
		color: #979797;
		font-size: var(--font-size-small);
		text-overflow: ellipsis;
		overflow: hidden;
		white-space: nowrap;
		line-height: 1;
		margin: 3px 0;
	}
	
	.age[b-0wfjar3y2t]{
		color: #272E40;
		font-size: var(--font-size-tiny);
		line-height: 1;
	}
}
/* /Pages/Secure/Contacts/ContactProfile/Components/Holdings/HoldingsGrid.razor.rz.scp.css */
/*
 * The memberships, services and enrolment plans grid - this screen's own layout.
 *
 * The card shell, the summary strip, the chips, the pills, the meters, the row states and the buttons
 * all come from the shared record-card primitives in Styles/Components/_recordCard.scss, which this
 * screen and the Activity page compose alike. What is left here is the column widths and the three
 * cells that only this grid has: the next-charge stack, the progress meter's labels and the drawn
 * payment card.
 *
 * No literal colours, sizes or radii - everything resolves through the tokens in _recordTokens.scss.
 */

/* The four column widths, declared once and applied to the header row and every data row, so the two
   cannot drift apart. The chevron that closes the row is not one of them - it is the shared
   .rc-col--chevron, at the same width on every screen. */
.holdings[b-rjaf4wg3s7] {
	--holdings-col-plan: 300px;
	--holdings-col-next: 186px;
	--holdings-col-paid: 156px;
}

.holdings__col--plan[b-rjaf4wg3s7] {
	width: var(--holdings-col-plan);
	box-sizing: border-box;
	flex: none;
}

.holdings__col--progress[b-rjaf4wg3s7] {
	flex: 1;
	min-width: 0;
}

.holdings__col--next[b-rjaf4wg3s7] {
	width: var(--holdings-col-next);
	box-sizing: border-box;
	flex: none;
}

.holdings__col--paid[b-rjaf4wg3s7] {
	width: var(--holdings-col-paid);
	box-sizing: border-box;
	flex: none;
}

/* The MOCK marker sits on the column header rather than on every row: it has to be impossible to miss
   but it must not compete with the data for attention seven times over. */
.holdings__mock[b-rjaf4wg3s7] {
	display: inline-block;
	margin-left: 5px;
	padding: 2px 5px;
	border-radius: var(--rc-radius-meter);
	background: var(--rc-danger-wash);
	color: var(--rc-danger-fg);
	letter-spacing: .09em;
}

/* ---------------------------------------------------------------------------------------------
   b) Account standing strip

   Two fixed cells, both wider than the Activity page's stat cells because both carry a sentence under
   the figure rather than a single line.
   --------------------------------------------------------------------------------------------- */

.holdings__cell--next[b-rjaf4wg3s7] {
	width: 262px;
	gap: 6px;
}

.holdings__cell--committed[b-rjaf4wg3s7] {
	width: 210px;
	gap: 7px;
}

.holdings__standing-context[b-rjaf4wg3s7] {
	font-weight: var(--font-weight-regular);
	font-size: var(--font-size-small);
	line-height: 1.35;
	color: var(--rc-text-secondary);
}

.holdings__cycle[b-rjaf4wg3s7] {
	margin-top: 5px;
}

.holdings__cycle-fill[b-rjaf4wg3s7] {
	background: var(--rc-positive-dot);
}

/* ---------------------------------------------------------------------------------------------
   c) Filter chips
   --------------------------------------------------------------------------------------------- */

.holdings__filters[b-rjaf4wg3s7] {
	padding: 16px var(--rc-gutter);
	border-bottom: 1px solid var(--rc-border-section);
}

/* ---------------------------------------------------------------------------------------------
   e) Rows
   --------------------------------------------------------------------------------------------- */

/* Memberships rows carry three stacked lines in the plan cell, so they run at the roomier of the two
   named densities. The Activity page uses the dense one. */
.holdings__row[b-rjaf4wg3s7] {
	padding-top: var(--rc-row-padding-y);
	padding-bottom: var(--rc-row-padding-y);
}

/* -- plan and status ------------------------------------------------------------------------- */

.holdings__plan[b-rjaf4wg3s7] {
	display: flex;
	flex-direction: column;
	gap: 8px;
	min-width: 0;
	padding-right: 8px;
}

.holdings__pills[b-rjaf4wg3s7] {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--rc-pill-gap);
}

.holdings__site[b-rjaf4wg3s7] {
	font-weight: var(--font-weight-regular);
	font-size: var(--font-size-tiny);
	line-height: 1;
	color: var(--rc-text-faint);
}

/* -- progress -------------------------------------------------------------------------------- */

.holdings__progress[b-rjaf4wg3s7] {
	display: flex;
	flex-direction: column;
	gap: 9px;
}

.holdings__meter-head[b-rjaf4wg3s7],
.holdings__meter-foot[b-rjaf4wg3s7] {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 12px;
}

.holdings__meter-label[b-rjaf4wg3s7] {
	font-weight: var(--font-weight-medium);
	font-size: var(--font-size-tiny);
	line-height: 1;
	color: var(--rc-text-segment);
}

.holdings__meter-value[b-rjaf4wg3s7] {
	font-weight: var(--font-weight-semibold);
	font-size: var(--font-size-tiny);
	line-height: 1;
	font-variant-numeric: tabular-nums;
	color: var(--rc-ink);
	white-space: nowrap;
}

.holdings__meter-term[b-rjaf4wg3s7],
.holdings__meter-caption[b-rjaf4wg3s7] {
	font-weight: var(--font-weight-regular);
	font-size: var(--font-size-tiny);
	line-height: 1;
	color: var(--rc-text-faint);
}

.holdings__meter-caption[b-rjaf4wg3s7] {
	text-align: right;
}

/* -- next charge ----------------------------------------------------------------------------- */

.holdings__next[b-rjaf4wg3s7] {
	display: flex;
	flex-direction: column;
	gap: 3px;
	padding-left: 8px;
	border-left: 1px solid var(--rc-border-column);
}

.holdings__next-day[b-rjaf4wg3s7] {
	font-weight: var(--font-weight-semibold);
	font-size: var(--font-size-small);
	line-height: 1.3;
}

.holdings__next-relative[b-rjaf4wg3s7] {
	font-weight: var(--font-weight-regular);
	font-size: var(--font-size-tiny);
	line-height: 1.3;
}

/* -- paid from ------------------------------------------------------------------------------- */

.holdings__paid[b-rjaf4wg3s7] {
	display: flex;
	align-items: center;
	gap: 9px;
}

/* The card glyph is drawn rather than iconised: the tinted body plus the magnetic stripe is what makes
   a card readable as a card at 26x18, and no icon in the set carries a tintable body. */
.holdings__card-glyph[b-rjaf4wg3s7] {
	position: relative;
	width: 26px;
	height: 18px;
	flex: none;
	border-radius: var(--rc-radius-swatch);
	border: 1px solid var(--rc-border-soft);
	box-sizing: border-box;
	overflow: hidden;
}

.holdings__card-stripe[b-rjaf4wg3s7] {
	position: absolute;
	left: 0;
	right: 0;
	top: 4px;
	height: 3.4px;
	background: var(--rc-pip-border);
}

.holdings__paid-text[b-rjaf4wg3s7] {
	display: flex;
	flex-direction: column;
	gap: 2px;
	min-width: 0;
}

.holdings__paid-method[b-rjaf4wg3s7] {
	font-weight: var(--font-weight-medium);
	font-size: var(--font-size-small);
	line-height: 1.25;
	color: var(--rc-ink);
}

.holdings__paid-note[b-rjaf4wg3s7] {
	font-weight: var(--font-weight-regular);
	font-size: var(--font-size-tiny);
	line-height: 1.25;
	color: var(--rc-text-faint);
}

.holdings__paid-note--problem[b-rjaf4wg3s7] {
	color: var(--rc-danger-fg);
}

/* ---------------------------------------------------------------------------------------------
   f) Footer
   --------------------------------------------------------------------------------------------- */

.holdings__footer-toggle[b-rjaf4wg3s7] {
	padding: 0;
	border: 0;
	background: none;
	font-weight: var(--font-weight-regular);
	font-size: var(--font-size-small);
	line-height: 1;
	color: var(--rc-text-tertiary);
	cursor: pointer;
}

.holdings__footer-toggle:hover[b-rjaf4wg3s7] {
	color: var(--rc-navy);
	text-decoration: underline;
}

/* ---------------------------------------------------------------------------------------------
   Narrow screens

   The design is drawn at 1180px and is fluid, but only the progress column flexes - below roughly a
   laptop width the fixed columns stop fitting. Rather than let them crush, the row wraps: plan and
   status keeps its own line, and progress / next charge / paid from flow underneath.
   --------------------------------------------------------------------------------------------- */

@media screen and (max-width: 1100px) {
	.holdings[b-rjaf4wg3s7] {
		--holdings-col-plan: 100%;
	}

	.rc-columns[b-rjaf4wg3s7] {
		display: none;
	}

	.holdings__row[b-rjaf4wg3s7] {
		flex-wrap: wrap;
		gap: 14px var(--rc-column-gap);
	}

	.holdings__plan[b-rjaf4wg3s7] {
		padding-right: 0;
	}

	.holdings__col--progress[b-rjaf4wg3s7] {
		flex: 1 1 240px;
	}

	.holdings__next[b-rjaf4wg3s7] {
		border-left: 0;
		padding-left: 0;
	}

	.rc-strip[b-rjaf4wg3s7] {
		flex-wrap: wrap;
	}

	.rc-strip__cell--lead[b-rjaf4wg3s7] {
		flex: 1 1 100%;
	}

	.rc-strip__divider[b-rjaf4wg3s7] {
		display: none;
	}
}

/* Phones. The two standing cells drop their desktop widths so the strip can wrap two-up instead of
   forcing the whole card wider than the screen; the shared shell handles the rest. */

@media screen and (max-width: 800px) {
	.holdings__cell--next[b-rjaf4wg3s7],
	.holdings__cell--committed[b-rjaf4wg3s7] {
		width: auto;
	}

	.holdings__col--progress[b-rjaf4wg3s7] {
		flex: 1 1 100%;
	}

	.holdings__paid[b-rjaf4wg3s7] {
		flex: 1 1 100%;
	}
}
/* /Pages/Secure/Contacts/ContactProfile/ContactProfile.razor.rz.scp.css */
.contact-profile[b-5qwhfls9ve]{
	display: grid;
	grid-template-columns: 200px auto;
	align-items: center;

	.profile-picture{
		display: flex;
		flex-direction: column;
		align-items: center;
		
		.profile-image{
			position: relative;
			display: flex;
			justify-content: center;
			align-items: center;
			width: 175px; 
			height: 175px; 
			background-color: #dde8f8;
			cursor: pointer;
			transition: opacity ease-in-out 0.2s;
			
			& img{
				object-fit: cover;
				width: 175px;
				height: 175px;
			}
			
			.spinner-icon[b-5qwhfls9ve]{
				position: absolute;
				top: 0;
				left: 0;
				right: 0;
				bottom: 0;
				background-color: #00000088;
				
				display: flex;
				align-items: center;
				justify-content: center;
			}
			
			.camera-icon[b-5qwhfls9ve]{
				font-size: 50px;
				color: #FFF;
				position: absolute;
				top: 50%;
				left: 50%;
				transform: translate(-50%, -50%);
				opacity: 0;
				transition: opacity ease-in-out 0.2s;
			}
			
			&:hover[b-5qwhfls9ve]{
				opacity: 0.8;
				
				.camera-icon{
					opacity: 0.5;
				}
			}
		}
	}

	.pronoun[b-5qwhfls9ve]{
		font-size: 10pt;
		color: #999;
		padding-top: 4px;
		text-align: center;
	}
	
	.profile-details[b-5qwhfls9ve]{
		height: 100%;
		display: flex;
		flex-direction: column;
		justify-content: space-between;
		
		.contact-details{
			.mobile{
				font-size: 14pt;
				padding-top: 20px;
				color: #333;
				text-decoration: none;
				display: block;
			}
			
			.email[b-5qwhfls9ve]{
				color: #333;
				text-decoration: none;
				text-overflow: ellipsis;
				overflow: hidden;
				white-space: nowrap;
				display: block;
			}
		}
	}
}

.tag-container[b-5qwhfls9ve]{
	margin-top: 8px;
}

.family-members[b-5qwhfls9ve]{
	display: flex;
	gap: 10px;
	
	.add-new{
		display: flex;
		flex-direction: column;
		width: 60px;
		align-items: center;
		text-decoration: none;
		cursor: pointer;

		.profile-circle{
			background-color: #F1F1F1;
			width: 48px;
			height: 48px;
			/*border-radius: 50%;*/
			align-items: center;
			justify-content: center;
			font-weight: bold;
			display: flex;
			color: #B0B0B0;
		}

		.name[b-5qwhfls9ve]{
			font-size: 9pt;
			line-height: 1;
			margin: 3px 0;
		}

		.age[b-5qwhfls9ve]{
			font-size: 8pt;
			line-height: 1;
		}

		&:hover .profile-circle[b-5qwhfls9ve]{
			background-color: #E1E1E1;
		}
	}
}

.tag-container[b-5qwhfls9ve]{
	display: flex;
	gap: 5px;
	
	.no-tags-message{
		color: #ccc;
		font-style: italic;
		cursor: pointer;
		
		&:hover{
			color: #aaa;
		}
	}
}
/* /Pages/Secure/Contacts/Contacts.razor.rz.scp.css */
.datagrid-container--search-empty[b-vhumpyu53w] {
	display: flex;
	flex-direction: column;
	position: relative;
	min-height: 100%;
}

.datagrid-container--search-empty[b-vhumpyu53w]  .module-empty-state {
	flex: 1;
	min-height: 100%;
	border-radius: 0;
}

.contacts-grid-host--hidden[b-vhumpyu53w] {
	display: none;
}

.contacts-grid-host[b-vhumpyu53w] {
	height: 100%;
	min-height: 100%;
}

.contacts-grid-loading[b-vhumpyu53w] {
	display: flex;
	flex: 1;
	align-items: center;
	justify-content: center;
	min-height: 100%;
}
/* /Pages/Secure/Dashboards/Dashboards.razor.rz.scp.css */
.dashboard-group__title[b-roy4skjexe] {
    font-size: 18px;
    font-weight: var(--font-weight-bold);
    color: var(--neutral-foreground-rest, #1a1a2e);
    margin: 0;
    padding: var(--section-padding, 24px) var(--section-padding, 24px) 0;
}

.dashboard-cards[b-roy4skjexe] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(min(100%, 360px), 1fr));
    gap: 16px;
    padding: var(--section-padding, 24px);
    align-items: stretch;
}

.dashboard-group__title + .dashboard-cards[b-roy4skjexe] {
    padding-top: 8px;
}

/* Legacy static cards (Sales Dashboard, My Day) */
.dashboard-card-legacy[b-roy4skjexe] {
    position: relative;
    display: flex;
    flex-direction: column;
    width: 100%;
    min-width: 0;
    max-width: 100%;
    height: 100%;
    max-height: 456px;
    overflow: hidden;
    background: #fff;
    border: 1px solid #e2e8f0;
    border-radius: var(--style-border-radius);
    padding: 20px 25px;
    box-shadow: 0 1px 3px rgb(0 0 0 / 8%);
}

.dashboard-card-legacy__icon-wrap[b-roy4skjexe] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 72px;
    height: 72px;
    border-radius: 16px;
    margin-bottom: 20px;
    font-size: 36px;
    flex-shrink: 0;
}

.dashboard-card-legacy__icon-wrap--purple[b-roy4skjexe] {
    background: #ede9fe;
    color: #6d28d9;
}

.dashboard-card-legacy__icon-wrap--orange[b-roy4skjexe] {
    background: #fff7ed;
    color: #ea7317;
}

.dashboard-card-legacy__body[b-roy4skjexe] {
    flex: 1;
    min-height: 0;
    display: flex;
    flex-direction: column;
    margin-bottom: 24px;
}

.dashboard-card-legacy__title[b-roy4skjexe] {
    flex-shrink: 0;
    margin: 0 0 12px;
    color: var(--color-surface-app);
    font-size: 18px;
    font-weight: var(--font-weight-semibold);
    line-height: normal;
}

.dashboard-card-legacy__description[b-roy4skjexe] {
    flex-shrink: 0;
    margin: 0;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
    text-overflow: ellipsis;
    color: #666;
    font-size: 12px;
    font-style: italic;
    font-weight: var(--font-weight-medium);
    line-height: normal;
}

.dashboard-card-legacy__open-btn[b-roy4skjexe] {
    display: block;
    flex-shrink: 0;
    text-align: center;
    background: #1a1a2e;
    color: #fff;
    border-radius: 999px;
    padding: 12px 0;
    font-size: 14px;
    font-weight: var(--font-weight-semibold);
    text-decoration: none;
    transition: background 0.15s;
}

.dashboard-card-legacy__open-btn:hover[b-roy4skjexe] {
    background: #2d2d4e;
    color: #fff;
}
/* /Pages/Secure/Dashboards/RevealDashboard.razor.rz.scp.css */
.page__content[b-tvybxmrhrt] {
	display: flex;
	align-items: stretch;
	overflow: hidden;
}

.container[b-tvybxmrhrt] {
	display: flex;
	flex: 1;
	flex-direction: column;
	min-width: 0;
	height: 100%;
	gap: 10px;
	overflow: hidden;
	background-color: white;
	padding-top: 5px;
}

.header-button-group[b-tvybxmrhrt] {
	display: flex;
	align-items: center;
	margin-left: 1rem;
}

.reveal-view[b-tvybxmrhrt] {
	flex: 1;
}

.reveal-view--loading[b-tvybxmrhrt] {
	visibility: hidden;
}

.reveal-view__loading-indicator[b-tvybxmrhrt] {
	height: 100%;
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
}

.veleo-chat-panel[b-tvybxmrhrt] {
	flex: 0 0 0;
	display: flex;
	flex-direction: column;
	min-width: 0;
	overflow: hidden;
	background: #fff;
	border-left: 1px solid transparent;
	transition: flex-basis 0.2s ease-in-out, border-color 0.2s ease-in-out;
}

.veleo-chat-panel--open[b-tvybxmrhrt] {
	flex-basis: 27.45%;
	border-left-color: var(--color-border-light);
}

.veleo-chat-panel__header[b-tvybxmrhrt] {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	height: 66px;
	min-height: 66px;
	padding: 0 16px;
	background-color: #41A3BA;
	color: #fff;
	--veleo-icon-color: #fff;
}

.veleo-chat-panel__header[b-tvybxmrhrt]  .HeadingWithIcon {
	column-gap: 18px;
}

.veleo-chat-panel__header[b-tvybxmrhrt]  .HeadingWithIcon .veleo-icon {
	--veleo-icon-size: 32px;
}

.veleo-chat-panel__header[b-tvybxmrhrt]  .HeadingWithIcon span {
	font-size: 16px;
	font-weight: var(--font-weight-semibold);
	line-height: normal;
}

.veleo-chat-panel__header[b-tvybxmrhrt]  .veleo-chat-panel__close {
	padding: 0;
}

.veleo-chat-panel__header[b-tvybxmrhrt]  .veleo-chat-panel__close i {
	font-size: 22px;
	line-height: 1;
}

.veleo-chat-panel__messages[b-tvybxmrhrt] {
	flex: 1;
	padding: 30px 28px;
	overflow-y: auto;
	display: flex;
	flex-direction: column;
	gap: 14px;
}

.veleo-chat-panel__greeting[b-tvybxmrhrt] {
	display: flex;
	flex-direction: column;
	gap: 10px;
	padding: 20px 24px;
	border-radius: 8px;
	border-bottom-left-radius: 4px;
	background: #f1f5f9;
}

.veleo-chat-panel__greeting-prompt[b-tvybxmrhrt],
.veleo-chat-panel__greeting-body[b-tvybxmrhrt] {
	color: var(--color-neutral-800);
	font-size: var(--font-size-normal);
	line-height: normal;
}

.veleo-chat-panel__greeting-prompt[b-tvybxmrhrt] {
	font-weight: var(--font-weight-bold);
}

.veleo-chat-panel__greeting-body[b-tvybxmrhrt] {
	font-weight: var(--font-weight-medium);
}

.veleo-chat-panel__row[b-tvybxmrhrt] {
	display: flex;
	flex-direction: column;
	max-width: 85%;
}

.veleo-chat-panel__row--user[b-tvybxmrhrt] {
	align-self: flex-end;
	align-items: flex-end;
}

.veleo-chat-panel__row--ai[b-tvybxmrhrt] {
	align-self: flex-start;
	align-items: flex-start;
}

.veleo-chat-panel__label[b-tvybxmrhrt] {
	font-size: 11px;
	font-weight: 500;
	color: #94a3b8;
	margin-bottom: 4px;
	padding: 0 4px;
}

.veleo-chat-panel__bubble[b-tvybxmrhrt] {
	padding: 10px 14px;
	border-radius: 12px;
	font-size: 14px;
	line-height: 1.5;
	white-space: pre-wrap;
	word-break: break-word;
}

.veleo-chat-panel__row--user .veleo-chat-panel__bubble[b-tvybxmrhrt] {
	background: var(--color-module-dashboards);
	color: #fff;
	border-bottom-right-radius: 4px;
}

.veleo-chat-panel__row--ai .veleo-chat-panel__bubble[b-tvybxmrhrt] {
	background: #f1f5f9;
	color: #1e293b;
	border-bottom-left-radius: 4px;
}

.veleo-chat-panel__bubble--error[b-tvybxmrhrt] {
	background: #fef2f2;
	color: #ef4444;
}

.veleo-chat-panel__markdown[b-tvybxmrhrt] {
	white-space: normal;
}

.veleo-chat-panel__markdown > :first-child[b-tvybxmrhrt] {
	margin-top: 0;
}

.veleo-chat-panel__markdown > :last-child[b-tvybxmrhrt] {
	margin-bottom: 0;
}

.veleo-chat-panel__markdown p[b-tvybxmrhrt],
.veleo-chat-panel__markdown ul[b-tvybxmrhrt],
.veleo-chat-panel__markdown ol[b-tvybxmrhrt],
.veleo-chat-panel__markdown pre[b-tvybxmrhrt],
.veleo-chat-panel__markdown table[b-tvybxmrhrt],
.veleo-chat-panel__markdown blockquote[b-tvybxmrhrt] {
	margin: 0 0 8px;
}

.veleo-chat-panel__markdown ul[b-tvybxmrhrt],
.veleo-chat-panel__markdown ol[b-tvybxmrhrt] {
	padding-left: 20px;
}

.veleo-chat-panel__markdown li[b-tvybxmrhrt] {
	margin-bottom: 2px;
}

.veleo-chat-panel__markdown h1[b-tvybxmrhrt],
.veleo-chat-panel__markdown h2[b-tvybxmrhrt],
.veleo-chat-panel__markdown h3[b-tvybxmrhrt],
.veleo-chat-panel__markdown h4[b-tvybxmrhrt] {
	margin: 12px 0 6px;
	font-size: 1em;
	font-weight: 600;
}

.veleo-chat-panel__markdown code[b-tvybxmrhrt] {
	background: rgba(0, 0, 0, 0.06);
	padding: 1px 4px;
	border-radius: 4px;
	font-size: 0.9em;
}

.veleo-chat-panel__markdown pre[b-tvybxmrhrt] {
	background: rgba(0, 0, 0, 0.06);
	padding: 8px 10px;
	border-radius: 6px;
	overflow-x: auto;
}

.veleo-chat-panel__markdown pre code[b-tvybxmrhrt] {
	background: none;
	padding: 0;
}

.veleo-chat-panel__markdown table[b-tvybxmrhrt] {
	border-collapse: collapse;
	font-size: 0.9em;
}

.veleo-chat-panel__markdown th[b-tvybxmrhrt],
.veleo-chat-panel__markdown td[b-tvybxmrhrt] {
	border: 1px solid rgba(0, 0, 0, 0.1);
	padding: 4px 8px;
}

.veleo-chat-panel__markdown a[b-tvybxmrhrt] {
	color: inherit;
	text-decoration: underline;
}

.veleo-chat-panel__markdown blockquote[b-tvybxmrhrt] {
	padding-left: 10px;
	border-left: 2px solid rgba(0, 0, 0, 0.15);
	opacity: 0.85;
}

.veleo-chat-panel__inline-dashboard[b-tvybxmrhrt] {
	margin-top: 8px;
	border: 1px solid #e2e8f0;
	border-radius: 10px;
	overflow: hidden;
	background: #fff;
	white-space: normal;
}

.veleo-chat-panel__inline-dashboard-header[b-tvybxmrhrt] {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	padding: 6px 10px;
	background: #f8fafc;
	border-bottom: 1px solid #e2e8f0;
	font-size: 12px;
	color: #64748b;
	min-width: 0;
}

.veleo-chat-panel__inline-dashboard-label[b-tvybxmrhrt] {
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.veleo-chat-panel__inline-dashboard-actions[b-tvybxmrhrt] {
	display: flex;
	align-items: center;
	flex-shrink: 0;
	gap: 12px;
}

.veleo-chat-panel__inline-dashboard-actions[b-tvybxmrhrt]  .inline-button {
	flex-shrink: 0;
	white-space: nowrap;
}

.veleo-chat-panel__inline-dashboard-view[b-tvybxmrhrt] {
	height: 260px;
	width: 100%;
	position: relative;
}

.veleo-chat-panel__inline-dashboard-nav[b-tvybxmrhrt] {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: 6px 0;
	border-top: 1px solid #f1f5f9;
}

.veleo-chat-panel__inline-dashboard-dots[b-tvybxmrhrt] {
	display: flex;
	align-items: center;
	gap: 6px;
}

.veleo-chat-panel__inline-dashboard-dot[b-tvybxmrhrt] {
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: #cbd5e1;
	cursor: pointer;
	transition: background 0.15s, width 0.15s;
}

.veleo-chat-panel__inline-dashboard-dot--active[b-tvybxmrhrt] {
	background: var(--color-module-dashboards);
	width: 14px;
	border-radius: 3px;
}

.veleo-chat-panel__typing[b-tvybxmrhrt] {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	padding: 4px 0;
}

.veleo-chat-panel__typing span[b-tvybxmrhrt] {
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: #94a3b8;
	animation: veleo-chat-typing-b-tvybxmrhrt 1.2s infinite ease-in-out;
}

.veleo-chat-panel__typing span:nth-child(2)[b-tvybxmrhrt] {
	animation-delay: 0.2s;
}

.veleo-chat-panel__typing span:nth-child(3)[b-tvybxmrhrt] {
	animation-delay: 0.4s;
}

@keyframes veleo-chat-typing-b-tvybxmrhrt {
	0%, 60%, 100% {
		transform: translateY(0);
		opacity: 0.5;
	}
	30% {
		transform: translateY(-4px);
		opacity: 1;
	}
}

.veleo-chat-panel__input[b-tvybxmrhrt] {
	display: flex;
	flex-direction: column;
	gap: 12px;
	padding: 16px;
	background: #EEE;
	border-top: 1px solid #CCC;
	container-type: inline-size;
}

.veleo-chat-panel__quick-actions[b-tvybxmrhrt] {
	display: flex;
	gap: 8px;
}

.veleo-chat-panel__quick-actions[b-tvybxmrhrt]  .button {
	flex: 1;
	margin: 0;
	min-width: 0;
	border: none;
}

.veleo-chat-panel__composer[b-tvybxmrhrt] {
	position: relative;
	border: 1px solid var(--color-pos-border);
	border-radius: 8px;
	background: #fff;
	transition: border-color 0.12s, box-shadow 0.12s;
}

.veleo-chat-panel__composer:focus-within[b-tvybxmrhrt] {
	border-color: var(--color-module-dashboards);
	box-shadow: 0 0 0 3px rgb(72 178 203 / 15%);
}

.veleo-chat-panel__textarea[b-tvybxmrhrt] {
	width: 100%;
	resize: none;
	border: none;
	background: none;
	padding: 12px 14px 42px;
	font-size: var(--font-size-normal);
	color: var(--color-neutral-800);
	line-height: normal;
	font-weight: var(--font-weight-regular);
	font-family: inherit;
	box-sizing: border-box;
}

.veleo-chat-panel__textarea[b-tvybxmrhrt]::placeholder {
	color: var(--color-neutral-400);
	font-size: var(--font-size-normal);
	font-weight: var(--font-weight-regular);
	line-height: normal;
	opacity: 1;
}

.veleo-chat-panel__textarea:focus[b-tvybxmrhrt] {
	outline: none;
}

.veleo-chat-panel__textarea:disabled[b-tvybxmrhrt] {
	color: #94a3b8;
}

[b-tvybxmrhrt] .veleo-chat-panel__send {
	position: absolute;
	right: 10px;
	bottom: 10px;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 32px;
	height: 32px;
	padding: 0;
	background: none;
	border: none;
	cursor: pointer;
}

[b-tvybxmrhrt] .veleo-chat-panel__send i {
	font-size: 32px;
	line-height: 1;
}

[b-tvybxmrhrt] .veleo-chat-panel__send:disabled {
	cursor: default;
	--icon-color: var(--color-neutral-300);
	--icon-color-hover: var(--color-neutral-300);
}

.veleo-chat-panel__disclaimer[b-tvybxmrhrt] {
	margin: 0;
	width: 100%;
	color: #969191;
	text-align: center;
	font-weight: var(--font-weight-regular);
	line-height: 1.3;
	font-size: clamp(9px, calc((100cqw - 32px) / 36), 14px);
}
/* /Pages/Secure/Diary/BookingSheet.razor.rz.scp.css */
.booking-sheet-container[b-fek5tlxf9y]{
	height: 100%;
	display: grid;
	grid-template-rows: max-content max-content auto;
	overflow: hidden;
	background-color: var(--color-background);

	.booking-sheet-empty-state {
		display: flex;
		min-height: 0;
		padding: 24px;
		background-color: var(--color-background);
	}
	
	.booking-sheet-controls[b-fek5tlxf9y]{
		background-color: #fff;
		/*border-bottom: 1px solid #E1E1E1;*/
		/*padding: 10px;*/
		
		.current-month-picker{
			
			text-transform: uppercase;
			color: #979797;
			font-size: 24px;
			font-weight: 600;
			margin-bottom: 10px;
			display: flex;
			gap: 10px;
			
			span{
				display: block;
				width: 225px;
				text-align: center;
			}
			
			button[b-fek5tlxf9y]{
				background-color: transparent;
				border: none;
				color: #C8C8C8;
				font-weight: bold;
				cursor: pointer;
				
				&:hover{
					color: #888;
				}
			}
		}
		
		.current-date-picker[b-fek5tlxf9y]{
			display: flex;
			/*gap: 2px;*/
			overflow-x: auto;
			-webkit-overflow-scrolling: touch;
			scrollbar-width: none;
			&::-webkit-scrollbar { display: none; }

			button[b-fek5tlxf9y]{
				display: grid;
				background-color: #FFF;
				border: none;
				flex: 0 0 auto;
				min-width: 44px;
				
				line-height: 1.1;
				transition: background-color 0.2s ease;
				align-items: center;
				justify-content: center;
				padding: 5px 0;

				span.day{color : #979797; font-size: 10pt;}
				span.date[b-fek5tlxf9y]{color: #272E40; font-weight: 600; font-size: 11pt;}
				
				&.weekend[b-fek5tlxf9y]{
					background-color: #E1E1E1;
				}

				&.today[b-fek5tlxf9y]{
					background-color: #DFEEC2;
				}

				&:hover[b-fek5tlxf9y]{
					background-color: #DFEEC2;
				}

				&.selected[b-fek5tlxf9y]{
					background-color: #7FBE0A;
					span.day{color : #FFFFFFAA;}
					span.date[b-fek5tlxf9y]{color: #FFF;}
				}

				@media (min-width: 768px) {
					flex: 1;
					min-width: unset;[b-fek5tlxf9y]
				}
			}
		}
	}

	.booking-sheet[b-fek5tlxf9y]{
		display: grid;
		overflow-y: scroll;
		overflow-x: auto;
		background-color: #EEE;

		.header{
			background-color: #666;
			color: white;
			font-weight: bold;
			text-align: center;
			position: sticky;
			top: 0;
			place-items: center;
			display: grid;
			border-left: 1px dashed #FFFFFF99;
			border-right: 1px dashed #FFFFFF99;
			z-index: 100;
		}

		.rline[b-fek5tlxf9y]{
			border-top: 1px dashed #DDD;
		}

		.time-label[b-fek5tlxf9y]{
			position: sticky;
			left: 0;
			z-index: 60;
			background-color: #eee;

			&:before{
				content: attr(data-time);
				font-size: 9pt;
				line-height: 1;
				background-color: #eee;
				color: #666;

				position: relative;
				top: -14px;
				padding: 0 6px;
			}
		}

		.corner[b-fek5tlxf9y]{
			position: sticky;
			left: 0;
			top: 0;
			z-index: 150;
			background-color: #eee;
		}

		.cline[b-fek5tlxf9y]{
			border-left: 1px dashed #DDD;
		}

		.blank[b-fek5tlxf9y]{
			background-color: transparent;
			cursor: pointer;

			&:hover{
				background-color: #DADADA;
				
				&:before{
					content: attr(data-time);
					font-size: 9pt;
					line-height: 1;
					background-color: #eee;
					color: #666;
					position: relative;
					top: -14px;
					padding: 0 6px;
				}
			}
		}

		.unavailable[b-fek5tlxf9y]{
			background: repeating-linear-gradient(45deg, #DDD, #DDD 3px, #EEE 3px, #EEE 6px)
		}
		
		.time-line[b-fek5tlxf9y]{
			border-top: 1px dashed red;
		}

		.booking-setup[b-fek5tlxf9y]{
			background: repeating-linear-gradient(
				-45deg,
				color-mix(in srgb, var(--booking-color) 20%, transparent) 0px,
				color-mix(in srgb, var(--booking-color) 20%, transparent) 3px,
				color-mix(in srgb, var(--booking-color) 8%, transparent) 3px,
				color-mix(in srgb, var(--booking-color) 8%, transparent) 8px
			);
			border-top: 2px solid color-mix(in srgb, var(--booking-color) 40%, transparent);
		}

		.booking-packdown[b-fek5tlxf9y]{
			background: repeating-linear-gradient(
				-45deg,
				color-mix(in srgb, var(--booking-color) 20%, transparent) 0px,
				color-mix(in srgb, var(--booking-color) 20%, transparent) 3px,
				color-mix(in srgb, var(--booking-color) 8%, transparent) 3px,
				color-mix(in srgb, var(--booking-color) 8%, transparent) 8px
			);
			border-bottom: 2px solid color-mix(in srgb, var(--booking-color) 40%, transparent);
		}
		
		.booking-container[b-fek5tlxf9y]{
			container-type: size;
			container-name: booking;
			--booking-color: #333;
			background-color: #FFF;
			display: flex;
			margin-right: 3px;
			padding: 4px 10px;
			color: #555;
			font-size: 10pt;
			border-radius: 3px;
			border: 1px dashed #CCC;
			border-left: 4px solid var(--booking-color);
			overflow: hidden;
			position: relative;
			
			.booking-info{
				display: grid;
				grid-template-columns: 1fr 40px;
				width: 100%;
				align-items: center;

				.booking-text{
					display: flex;
					flex-direction: column;
					overflow: hidden;
					min-width: 0;
				}
				.booking-name[b-fek5tlxf9y]{
					overflow: hidden;
					text-overflow: ellipsis;
					white-space: nowrap;
				}
				.booking-contact[b-fek5tlxf9y]{
					font-size: 0.7em;
					opacity: 0.75;
					overflow: hidden;
					text-overflow: ellipsis;
					white-space: nowrap;
				}
				.booking-icon[b-fek5tlxf9y]{
					display: grid;
					align-items: center;
					justify-content: flex-end;
				}
			}

			.capacity-bar[b-fek5tlxf9y]{
				--bar-width: 100%;
				height: 100%;
				position: absolute;
				bottom: 0;
				left: 0;
				right: 0;

				&:before{
					content: '';
					height: 100%;
					position: absolute;
					width: var(--bar-width);
					background: linear-gradient(270deg,var(--booking-color) 0%, rgba(255, 255, 255, 1) 50%);
					opacity: 0.05;
				}
			}
			
			@container booking (max-height: 35px) and (min-width: 220px){
				.booking-text[b-fek5tlxf9y]{
					flex-direction: row;
					gap: 0.4em;
					align-items: center;
				}
			}

			@container booking (max-height: 35px) and (max-width: 219px){
				.booking-contact[b-fek5tlxf9y]{
					display: none;
				}
			}
			
			&:hover[b-fek5tlxf9y]{
				background-color: #F2F2F2;
				border-left-width: 8px;
			}

			&.booking-container--held[b-fek5tlxf9y]{
				opacity: 0.6;
				border-left-style: dashed;
				border-style: dashed;
				border-left-style: dashed;
				border-left-width: 4px;
			}
		}

		&.is-dragging .booking-container[b-fek5tlxf9y],
		&.is-dragging .booking-setup[b-fek5tlxf9y],
		&.is-dragging .booking-packdown[b-fek5tlxf9y],
		&.is-dragging .unavailable[b-fek5tlxf9y] {
			pointer-events: none;
		}

		.selection-preview[b-fek5tlxf9y] {
			background: rgba(100, 160, 255, 0.20);
			border: 2px solid rgba(100, 160, 255, 0.60);
			border-radius: 3px;
			pointer-events: none;
			z-index: 50;
		}
	}
}
/* /Pages/Secure/Diary/Diary.razor.rz.scp.css */
/* /Pages/Secure/Home.razor.rz.scp.css */
.dashboard-container[b-xicib6dmqf] {
	padding: 20px;
}

/* Stats Grid */
.stats-grid[b-xicib6dmqf] {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(240px, 100%), 1fr));
	gap: 20px;
	margin-bottom: 24px;
}

.stat-card[b-xicib6dmqf] {
	background: white;
	border-radius: 12px;
	padding: 24px;
	display: flex;
	align-items: center;
	gap: 16px;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.04);
	border: 1px solid #e9ecef;
	transition: all 0.2s ease;
}

.stat-card:hover[b-xicib6dmqf] {
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
	transform: translateY(-2px);
}

.stat-icon[b-xicib6dmqf] {
	width: 56px;
	height: 56px;
	border-radius: 12px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 24px;
}

.stat-card-primary .stat-icon[b-xicib6dmqf] {
	background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
	color: white;
}

.stat-card-success .stat-icon[b-xicib6dmqf] {
	background: linear-gradient(135deg, #5ee7df 0%, #66a6ff 100%);
	color: white;
}

.stat-card-warning .stat-icon[b-xicib6dmqf] {
	background: linear-gradient(135deg, #fccf31 0%, #f55555 100%);
	color: white;
}

.stat-card-info .stat-icon[b-xicib6dmqf] {
	background: linear-gradient(135deg, #0ba360 0%, #3cba92 100%);
	color: white;
}

.stat-content[b-xicib6dmqf] {
	flex: 1;
}

.stat-label[b-xicib6dmqf] {
	font-size: 13px;
	color: #6c757d;
	font-weight: 500;
	margin-bottom: 4px;
}

.stat-value[b-xicib6dmqf] {
	font-size: 32px;
	font-weight: 700;
	color: #212529;
	line-height: 1;
}

/* Dashboard Grid */
.dashboard-grid[b-xicib6dmqf] {
	display: grid;
	grid-template-columns: 2fr 1fr;
	gap: 24px;
	margin-bottom: 24px;
}

@media (max-width: 1200px) {
	.dashboard-grid[b-xicib6dmqf] {
		grid-template-columns: 1fr;
	}
}

.dashboard-card[b-xicib6dmqf] {
	background: white;
	border-radius: 12px;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.04);
	border: 1px solid #e9ecef;
	overflow: hidden;
}

.card-header[b-xicib6dmqf] {
	padding: 20px 24px;
	border-bottom: 1px solid #e9ecef;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.card-title[b-xicib6dmqf] {
	display: flex;
	align-items: center;
	gap: 12px;
}

.card-title h2[b-xicib6dmqf] {
	font-size: 18px;
	font-weight: 600;
	color: #212529;
	margin: 0;
}

.card-title-icon[b-xicib6dmqf] {
	font-size: 20px;
	color: #0A7FBE;
}

.card-subtitle[b-xicib6dmqf] {
	font-size: 13px;
	color: #6c757d;
	font-weight: 500;
}

.card-content[b-xicib6dmqf] {
	padding: 24px;
}

/* ── Type badges and row meta (shared with the day timeline) ─────────────── */

.roster-badge[b-xicib6dmqf] {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	font-size: 11px;
	font-weight: 600;
	padding: 4px 10px;
	border-radius: 6px;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	white-space: nowrap;
}

.roster-badge.type-class[b-xicib6dmqf] {
	background: #e7f5ff;
	color: #0b6d7d;
}

.roster-badge.type-course[b-xicib6dmqf] {
	background: #e3f9e5;
	color: #0a7029;
}

.roster-badge.type-activity[b-xicib6dmqf] {
	background: #fff3e0;
	color: #9c5e00;
}

.roster-badge.type-evaluation[b-xicib6dmqf] {
	background: #f3e5f5;
	color: #6a1b9a;
}

.roster-badge.type-appointment[b-xicib6dmqf] {
	background: #e8eaf6;
	color: #303f9f;
}

.meta-item[b-xicib6dmqf] {
	display: flex;
	align-items: center;
	gap: 6px;
	font-size: 13px;
	color: #5c636a;
	min-width: 0;
}

.meta-icon[b-xicib6dmqf] {
	font-size: 14px;
}

.meta-highlight[b-xicib6dmqf] {
	color: #b02a37;
	font-weight: 600;
}

/* ── KPI row ─────────────────────────────────────────────────────────────── */

/* Five KPIs need a narrower minimum than the default grid allows, or they wrap to
   two rows on an ordinary laptop. */
.stats-grid--five[b-xicib6dmqf] {
	grid-template-columns: repeat(auto-fit, minmax(min(190px, 100%), 1fr));
}

.stats-grid--five .stat-card[b-xicib6dmqf] {
	padding: 18px;
	gap: 12px;
}

.stats-grid--five .stat-icon[b-xicib6dmqf] {
	width: 44px;
	height: 44px;
	border-radius: 10px;
	font-size: 20px;
}

.stats-grid--five .stat-value[b-xicib6dmqf] {
	font-size: 26px;
}

.stat-card-appointments .stat-icon[b-xicib6dmqf] {
	background: linear-gradient(135deg, #7f8de8 0%, #3f51b5 100%);
	color: white;
}

/* ── Card header extras ──────────────────────────────────────────────────── */

.card-header__meta[b-xicib6dmqf] {
	display: flex;
	align-items: center;
	gap: 12px;
	flex-wrap: wrap;
	justify-content: flex-end;
}

/* The freshness stamp. The roster refreshes itself every few minutes, but the screen
   still says when it last did - a silently stale roster is the failure to avoid. */
.day-as-at[b-xicib6dmqf] {
	font-size: 12px;
	color: #6c757d;
	font-variant-numeric: tabular-nums;
}

.day-button[b-xicib6dmqf] {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font: inherit;
	font-size: 13px;
	font-weight: 600;
	padding: 7px 12px;
	border-radius: 8px;
	border: 1px solid transparent;
	cursor: pointer;
	transition: background 0.15s ease, border-color 0.15s ease;
}

.day-button--ghost[b-xicib6dmqf] {
	background: transparent;
	border-color: #dee2e6;
	color: #495057;
}

.day-button--ghost:hover[b-xicib6dmqf] {
	background: #f1f3f5;
}

.day-button--primary[b-xicib6dmqf] {
	background: #0A7FBE;
	color: white;
	margin-top: 16px;
}

.day-button--primary:hover[b-xicib6dmqf] {
	background: #096a9f;
}

.day-button:focus-visible[b-xicib6dmqf] {
	outline: 2px solid #0A7FBE;
	outline-offset: 2px;
}

/* ── Error state ─────────────────────────────────────────────────────────── */

.day-error[b-xicib6dmqf] {
	border-color: #f1c9cd;
}

.empty-icon--error[b-xicib6dmqf] {
	color: #dc3545;
}

.day-error__title[b-xicib6dmqf] {
	font-weight: 600;
	color: #212529;
	margin: 0 0 4px;
}

.day-error__detail[b-xicib6dmqf] {
	color: #6c757d;
	margin: 0;
	font-size: 13px;
}

/* ── The day timeline ────────────────────────────────────────────────────── */

.day-timeline[b-xicib6dmqf] {
	display: flex;
	flex-direction: column;
	gap: 10px;
	list-style: none;
	margin: 0;
	padding: 0;
}

.day-item-row[b-xicib6dmqf] {
	list-style: none;
}

/* A run of items at the same site gets one heading, so a day that crosses town reads as
   two blocks rather than an undifferentiated list. */
.day-site-break[b-xicib6dmqf] {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-top: 12px;
	padding-bottom: 6px;
	border-bottom: 1px solid #e9ecef;
	list-style: none;
}

.day-timeline > .day-site-break:first-child[b-xicib6dmqf] {
	margin-top: 0;
}

.day-site-break__icon[b-xicib6dmqf] {
	font-size: 15px;
	color: #0A7FBE;
}

.day-site-break__name[b-xicib6dmqf] {
	font-size: 14px;
	font-weight: 700;
	color: #212529;
	letter-spacing: 0.2px;
}

.day-site-break__zone[b-xicib6dmqf] {
	font-size: 12px;
	color: #6c757d;
	font-style: italic;
}

/* The "now" line. Text-labelled, not a bare coloured rule, so it survives being read
   without colour. */
.day-now-marker[b-xicib6dmqf] {
	display: flex;
	align-items: center;
	gap: 10px;
	list-style: none;
	margin: 4px 0;
}

.day-now-marker[b-xicib6dmqf]::after {
	content: "";
	flex: 1;
	height: 2px;
	background: #0A7FBE;
	border-radius: 2px;
}

.day-now-marker__label[b-xicib6dmqf] {
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.6px;
	color: #0A7FBE;
	background: #e7f2f9;
	padding: 3px 8px;
	border-radius: 6px;
	white-space: nowrap;
}

/* The row itself. Rendered as a <button> when it opens a panel and a <div role="group">
   when it does not, so both variants have to reset button chrome and lay out identically. */
.day-item[b-xicib6dmqf] {
	display: block;
	width: 100%;
	text-align: left;
	font: inherit;
	color: inherit;
	background: #f8f9fa;
	border: 1px solid #e9ecef;
	border-left: 4px solid #ced4da;
	border-radius: 8px;
	padding: 14px 16px;
	transition: background 0.15s ease, box-shadow 0.15s ease;
}

.day-item--clickable[b-xicib6dmqf] {
	cursor: pointer;
}

.day-item--clickable:hover[b-xicib6dmqf] {
	background: #eef1f4;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.07);
}

.day-item--clickable:focus-visible[b-xicib6dmqf] {
	outline: 2px solid #0A7FBE;
	outline-offset: 2px;
}

.day-item--readonly[b-xicib6dmqf] {
	cursor: default;
}

.day-item--upcoming[b-xicib6dmqf] {
	border-left-color: #0A7FBE;
}

/* In progress right now: the strongest treatment on the page. */
.day-item--now[b-xicib6dmqf] {
	border-left-color: #0a7029;
	background: #f2fbf4;
}

.day-item--next[b-xicib6dmqf] {
	box-shadow: 0 0 0 2px rgba(10, 127, 190, 0.25);
}

/* Done. De-emphasised, but never below AA contrast - staff still read back over their day. */
.day-item--past[b-xicib6dmqf] {
	background: #fbfbfc;
	border-left-color: #ced4da;
}

.day-item--past .day-item__name[b-xicib6dmqf],
.day-item--past .day-item__start[b-xicib6dmqf] {
	color: #5c636a;
}

.day-item--cancelled[b-xicib6dmqf] {
	background: #fdf7f7;
	border-left-color: #b02a37;
}

.day-item__body[b-xicib6dmqf] {
	display: grid;
	grid-template-columns: 72px minmax(0, 1fr) auto;
	gap: 16px;
	align-items: start;
}

@media (max-width: 800px) {
	.day-item__body[b-xicib6dmqf] {
		grid-template-columns: minmax(0, 1fr) auto;
		gap: 10px 14px;
	}

	.day-item__time[b-xicib6dmqf] {
		grid-column: 1;
		grid-row: 1;
		flex-direction: row;
		align-items: center;
		gap: 10px;
	}

	.day-item__chevron[b-xicib6dmqf] {
		grid-column: 2;
		grid-row: 1;
	}

	.day-item__details[b-xicib6dmqf] {
		grid-column: 1 / -1;
		grid-row: 2;
	}
}

.day-item__time[b-xicib6dmqf] {
	display: flex;
	flex-direction: column;
	gap: 2px;
	position: relative;
	padding-left: 10px;
}

/* The item's own domain colour, matching the diary. Decorative only - never the sole
   carrier of any status. */
.day-item__accent[b-xicib6dmqf] {
	position: absolute;
	left: 0;
	top: 2px;
	bottom: 2px;
	width: 3px;
	border-radius: 2px;
}

.day-item__start[b-xicib6dmqf] {
	font-size: 16px;
	font-weight: 700;
	color: #212529;
	font-variant-numeric: tabular-nums;
}

.day-item__duration[b-xicib6dmqf] {
	font-size: 12px;
	color: #6c757d;
}

.day-item__details[b-xicib6dmqf] {
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.day-item__heading[b-xicib6dmqf] {
	display: flex;
	align-items: center;
	gap: 8px;
	flex-wrap: wrap;
}

.day-item__name[b-xicib6dmqf] {
	font-size: 15px;
	font-weight: 600;
	color: #212529;
	margin: 0;
	overflow-wrap: anywhere;
}

.day-item__name--cancelled[b-xicib6dmqf] {
	text-decoration: line-through;
	text-decoration-thickness: 2px;
	color: #6c757d;
}

.day-item__meta[b-xicib6dmqf] {
	display: flex;
	gap: 16px;
	flex-wrap: wrap;
	align-items: center;
}

.day-item__zone[b-xicib6dmqf] {
	font-size: 11px;
	color: #856404;
	background: #fff3cd;
	padding: 1px 6px;
	border-radius: 4px;
	white-space: nowrap;
}

.day-item__resources[b-xicib6dmqf] {
	flex-wrap: wrap;
	gap: 6px;
}

.day-resource[b-xicib6dmqf] {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	font-size: 12px;
	color: #495057;
	background: #eef1f4;
	padding: 2px 8px;
	border-radius: 10px;
	max-width: 100%;
	overflow-wrap: anywhere;
}

.day-item__chevron[b-xicib6dmqf] {
	color: #adb5bd;
	align-self: center;
}

/* ── Badges ──────────────────────────────────────────────────────────────── */

.day-badge[b-xicib6dmqf] {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	font-size: 11px;
	font-weight: 700;
	padding: 3px 8px;
	border-radius: 6px;
	white-space: nowrap;
}

.day-badge--cancelled[b-xicib6dmqf] {
	background: #f8d7da;
	color: #842029;
}

/* Covering somebody else's session is the least expected thing on the row, so it gets
   the loudest badge. */
.day-badge--cover[b-xicib6dmqf] {
	background: #fff3cd;
	color: #7a5600;
}

.day-badge--readonly[b-xicib6dmqf] {
	background: #e9ecef;
	color: #495057;
}

/* ── Set-up / pack-down mini timeline ───────────────────────────────────── */

.day-subtimeline[b-xicib6dmqf] {
	list-style: none;
	margin: 4px 0 0;
	padding: 10px 12px;
	background: #ffffff;
	border: 1px dashed #dee2e6;
	border-radius: 6px;
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.day-subtimeline__step[b-xicib6dmqf] {
	display: flex;
	gap: 12px;
	align-items: baseline;
	font-size: 12.5px;
	color: #495057;
}

.day-subtimeline__time[b-xicib6dmqf] {
	font-variant-numeric: tabular-nums;
	font-weight: 700;
	color: #212529;
	min-width: 42px;
}

.day-subtimeline__what[b-xicib6dmqf] {
	min-width: 0;
	overflow-wrap: anywhere;
}

.day-subtimeline__mins[b-xicib6dmqf] {
	color: #6c757d;
	margin-left: 6px;
}

.day-subtimeline__step--setup .day-subtimeline__time[b-xicib6dmqf],
.day-subtimeline__step--packdown .day-subtimeline__time[b-xicib6dmqf] {
	color: #9c5e00;
}

.day-instructions[b-xicib6dmqf] {
	display: flex;
	flex-direction: column;
	gap: 6px;
	margin-top: 6px;
}

/* Short instructions render open; long ones collapse. Either way they are on the row,
   not behind a navigation. */
.day-instructions__block[b-xicib6dmqf] {
	background: #fff3cd;
	border-left: 3px solid #ffc107;
	border-radius: 4px;
	padding: 8px 10px;
	font-size: 12.5px;
	color: #6a4e00;
}

.day-instructions__block summary[b-xicib6dmqf] {
	cursor: pointer;
	font-weight: 700;
}

.day-instructions__block p[b-xicib6dmqf] {
	margin: 6px 0 0;
	overflow-wrap: anywhere;
	color: #5c4700;
}

/* ── Empty states ────────────────────────────────────────────────────────── */

.empty-state[b-xicib6dmqf] {
	text-align: center;
	padding: 40px 20px;
}

.empty-icon[b-xicib6dmqf] {
	font-size: 48px;
	color: #ced4da;
	margin-bottom: 12px;
}

.empty-state p[b-xicib6dmqf] {
	color: #5c636a;
	margin: 0;
}

.empty-state__hint[b-xicib6dmqf] {
	margin-top: 6px;
	font-size: 13px;
	color: #868e96;
	max-width: 46ch;
	margin-left: auto;
	margin-right: auto;
}

/* ── Reduced motion ─────────────────────────────────────────────────────── */

@media (prefers-reduced-motion: reduce) {
	.stat-card[b-xicib6dmqf],
	.day-item[b-xicib6dmqf],
	.day-button[b-xicib6dmqf] {
		transition: none;
	}

	.stat-card:hover[b-xicib6dmqf] {
		transform: none;
	}
}
/* /Pages/Secure/Marketing/Marketing.razor.rz.scp.css */
.marketing-container[b-247ydi0ob0] {
	padding: 24px;
}

/* Quick Actions Bar */
.quick-actions-bar[b-247ydi0ob0] {
	display: flex;
	gap: 12px;
	margin-bottom: 24px;
	flex-wrap: wrap;
}

.action-btn[b-247ydi0ob0] {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 12px 20px;
	border: 2px solid;
	border-radius: 10px;
	font-size: 14px;
	font-weight: 600;
	cursor: pointer;
	transition: all 0.2s;
}

.action-icon[b-247ydi0ob0] {
	font-size: 18px;
}

.action-btn-primary[b-247ydi0ob0] {
	background: #0A7FBE;
	border-color: #0A7FBE;
	color: white;
}

.action-btn-primary:hover[b-247ydi0ob0] {
	background: #096a9f;
	transform: translateY(-2px);
	box-shadow: 0 4px 12px rgba(10, 127, 190, 0.3);
}

.action-btn-secondary[b-247ydi0ob0] {
	background: white;
	border-color: #e9ecef;
	color: #495057;
}

.action-btn-secondary:hover[b-247ydi0ob0] {
	border-color: #0A7FBE;
	color: #0A7FBE;
	transform: translateY(-2px);
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
}

/* Stats Grid */
.marketing-stats-grid[b-247ydi0ob0] {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
	gap: 20px;
	margin-bottom: 24px;
}

.stat-card[b-247ydi0ob0] {
	background: white;
	border-radius: 12px;
	padding: 24px;
	border: 1px solid #e9ecef;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.04);
}

.stat-header[b-247ydi0ob0] {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 16px;
}

.stat-header-icon[b-247ydi0ob0] {
	font-size: 20px;
	color: #6c757d;
}

.stat-label[b-247ydi0ob0] {
	font-size: 13px;
	color: #6c757d;
	font-weight: 500;
}

.stat-value[b-247ydi0ob0] {
	font-size: 36px;
	font-weight: 700;
	color: #212529;
	margin-bottom: 8px;
}

.stat-change[b-247ydi0ob0] {
	display: flex;
	align-items: center;
	gap: 4px;
	font-size: 13px;
	font-weight: 500;
}

.stat-change.positive[b-247ydi0ob0] {
	color: #28a745;
}

.stat-change.negative[b-247ydi0ob0] {
	color: #dc3545;
}

.change-icon[b-247ydi0ob0] {
	font-size: 14px;
}

.stat-card-sent .stat-header-icon[b-247ydi0ob0] {
	color: #667eea;
}

.stat-card-opened .stat-header-icon[b-247ydi0ob0] {
	color: #5ee7df;
}

.stat-card-clicked .stat-header-icon[b-247ydi0ob0] {
	color: #fccf31;
}

.stat-card-audience .stat-header-icon[b-247ydi0ob0] {
	color: #0ba360;
}

/* Marketing Cards */
.marketing-content-grid[b-247ydi0ob0] {
	display: grid;
	grid-template-columns: 2fr 1fr;
	gap: 24px;
	margin-bottom: 24px;
}

.marketing-bottom-grid[b-247ydi0ob0] {
	grid-template-columns: 1fr 1fr;
}

.marketing-card[b-247ydi0ob0] {
	background: white;
	border-radius: 12px;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.04);
	border: 1px solid #e9ecef;
	overflow: hidden;
}

.card-header[b-247ydi0ob0] {
	padding: 20px 24px;
	border-bottom: 1px solid #e9ecef;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.card-title[b-247ydi0ob0] {
	display: flex;
	align-items: center;
	gap: 12px;
}

.card-title h2[b-247ydi0ob0] {
	font-size: 18px;
	font-weight: 600;
	color: #212529;
	margin: 0;
}

.card-title-icon[b-247ydi0ob0] {
	font-size: 20px;
	color: #0A7FBE;
}

.card-content[b-247ydi0ob0] {
	padding: 24px;
}

/* Chart Placeholder */
.chart-placeholder[b-247ydi0ob0] {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.mock-chart[b-247ydi0ob0] {
	width: 100%;
	height: 300px;
}

.chart-legend[b-247ydi0ob0] {
	display: flex;
	justify-content: center;
	gap: 24px;
}

.legend-item[b-247ydi0ob0] {
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 13px;
	color: #495057;
}

.legend-color[b-247ydi0ob0] {
	width: 16px;
	height: 3px;
	border-radius: 2px;
}

.chart-note[b-247ydi0ob0] {
	background: #e7f5ff;
	padding: 12px;
	border-radius: 8px;
	font-size: 13px;
	color: #0c8599;
	margin: 0;
	display: flex;
	align-items: center;
	gap: 8px;
}

.note-icon[b-247ydi0ob0] {
	font-size: 16px;
}

.chart-note code[b-247ydi0ob0] {
	background: rgba(255, 255, 255, 0.7);
	padding: 2px 6px;
	border-radius: 4px;
	font-family: 'Courier New', monospace;
	font-size: 12px;
}

.chart-controls[b-247ydi0ob0] {
	display: flex;
	gap: 4px;
	background: #f8f9fa;
	padding: 4px;
	border-radius: 8px;
}

.chart-filter-btn[b-247ydi0ob0] {
	padding: 6px 16px;
	border: none;
	background: transparent;
	border-radius: 6px;
	font-size: 13px;
	font-weight: 600;
	color: #6c757d;
	cursor: pointer;
	transition: all 0.2s;
}

.chart-filter-btn:hover[b-247ydi0ob0] {
	color: #212529;
}

.chart-filter-btn.active[b-247ydi0ob0] {
	background: white;
	color: #0A7FBE;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.08);
}

/* Channel List */
.channel-list[b-247ydi0ob0] {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.channel-item[b-247ydi0ob0] {
	padding: 16px;
	background: #f8f9fa;
	border-radius: 10px;
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.channel-info[b-247ydi0ob0] {
	display: flex;
	align-items: center;
	gap: 12px;
}

.channel-icon[b-247ydi0ob0] {
	font-size: 24px;
	color: #0A7FBE;
}

.channel-details[b-247ydi0ob0] {
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.channel-name[b-247ydi0ob0] {
	font-size: 15px;
	font-weight: 600;
	color: #212529;
}

.channel-sent[b-247ydi0ob0] {
	font-size: 12px;
	color: #6c757d;
}

.channel-metrics[b-247ydi0ob0] {
	display: flex;
	gap: 24px;
}

.metric[b-247ydi0ob0] {
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.metric-value[b-247ydi0ob0] {
	font-size: 20px;
	font-weight: 700;
	color: #212529;
}

.metric-label[b-247ydi0ob0] {
	font-size: 11px;
	color: #6c757d;
	text-transform: uppercase;
	letter-spacing: 0.5px;
}

.channel-bar[b-247ydi0ob0] {
	height: 6px;
	background: #e9ecef;
	border-radius: 3px;
	overflow: hidden;
}

.bar-fill[b-247ydi0ob0] {
	height: 100%;
	background: linear-gradient(90deg, #667eea 0%, #764ba2 100%);
	border-radius: 3px;
	transition: width 0.3s ease;
}

/* Campaigns Table */
.campaigns-table[b-247ydi0ob0] {
	display: flex;
	flex-direction: column;
}

.table-header[b-247ydi0ob0] {
	display: grid;
	grid-template-columns: 2fr 1fr 0.8fr 0.8fr 1fr 1fr 0.8fr 1fr;
	gap: 16px;
	padding: 12px 16px;
	background: #f8f9fa;
	border-radius: 8px;
	font-size: 12px;
	font-weight: 600;
	color: #6c757d;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	margin-bottom: 8px;
}

.table-row[b-247ydi0ob0] {
	display: grid;
	grid-template-columns: 2fr 1fr 0.8fr 0.8fr 1fr 1fr 0.8fr 1fr;
	gap: 16px;
	padding: 16px;
	border-bottom: 1px solid #e9ecef;
	align-items: center;
	transition: all 0.2s;
}

.table-row:hover[b-247ydi0ob0] {
	background: #f8f9fa;
}

.table-row:last-child[b-247ydi0ob0] {
	border-bottom: none;
}

.campaign-info[b-247ydi0ob0] {
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.campaign-name[b-247ydi0ob0] {
	font-size: 14px;
	font-weight: 600;
	color: #212529;
}

.campaign-date[b-247ydi0ob0] {
	font-size: 12px;
	color: #6c757d;
}

.channel-badge[b-247ydi0ob0] {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 6px 12px;
	border-radius: 6px;
	font-size: 12px;
	font-weight: 600;
	width: fit-content;
}

.badge-icon[b-247ydi0ob0] {
	font-size: 14px;
}

.channel-badge-email[b-247ydi0ob0] {
	background: #e7f5ff;
	color: #0c8599;
}

.channel-badge-sms[b-247ydi0ob0] {
	background: #e3f9e5;
	color: #0a7029;
}

.channel-badge-push[b-247ydi0ob0] {
	background: #fff3e0;
	color: #c77700;
}

.metric-cell[b-247ydi0ob0] {
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.metric-main[b-247ydi0ob0] {
	font-size: 14px;
	font-weight: 600;
	color: #212529;
}

.metric-sub[b-247ydi0ob0] {
	font-size: 12px;
	color: #6c757d;
}

.status-badge[b-247ydi0ob0] {
	display: inline-block;
	padding: 6px 12px;
	border-radius: 6px;
	font-size: 12px;
	font-weight: 600;
	text-align: center;
}

.status-sent[b-247ydi0ob0] {
	background: #e3f9e5;
	color: #0a7029;
}

.status-draft[b-247ydi0ob0] {
	background: #f8f9fa;
	color: #6c757d;
}

.status-scheduled[b-247ydi0ob0] {
	background: #fff3e0;
	color: #c77700;
}

.col-actions[b-247ydi0ob0] {
	display: flex;
	gap: 8px;
	justify-content: flex-end;
}

.view-all-btn[b-247ydi0ob0] {
	display: flex;
	align-items: center;
	gap: 6px;
	padding: 8px 16px;
	background: transparent;
	border: 2px solid #e9ecef;
	border-radius: 8px;
	font-size: 13px;
	font-weight: 600;
	color: #495057;
	cursor: pointer;
	transition: all 0.2s;
}

.view-all-btn:hover[b-247ydi0ob0] {
	border-color: #0A7FBE;
	color: #0A7FBE;
}

.view-all-icon[b-247ydi0ob0] {
	font-size: 12px;
}

/* Top Links */
.links-list[b-247ydi0ob0] {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.link-item[b-247ydi0ob0] {
	display: flex;
	justify-content: space-between;
	gap: 16px;
	padding: 12px;
	background: #f8f9fa;
	border-radius: 8px;
}

.link-info[b-247ydi0ob0] {
	display: flex;
	flex-direction: column;
	gap: 4px;
	flex: 1;
	min-width: 0;
}

.link-url[b-247ydi0ob0] {
	font-size: 13px;
	font-weight: 600;
	color: #0A7FBE;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.link-campaign[b-247ydi0ob0] {
	font-size: 12px;
	color: #6c757d;
}

.link-stats[b-247ydi0ob0] {
	display: flex;
	flex-direction: column;
	gap: 6px;
	min-width: 120px;
}

.link-clicks[b-247ydi0ob0] {
	font-size: 12px;
	font-weight: 600;
	color: #212529;
	text-align: right;
}

.link-bar[b-247ydi0ob0] {
	height: 4px;
	background: #e9ecef;
	border-radius: 2px;
	overflow: hidden;
}

.link-bar-fill[b-247ydi0ob0] {
	height: 100%;
	background: linear-gradient(90deg, #0A7FBE 0%, #0ba360 100%);
	border-radius: 2px;
}

/* Engagement Trends */
.trends-grid[b-247ydi0ob0] {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 16px;
}

.trend-item[b-247ydi0ob0] {
	padding: 16px;
	background: #f8f9fa;
	border-radius: 10px;
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.trend-header[b-247ydi0ob0] {
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 13px;
	font-weight: 500;
	color: #6c757d;
}

.trend-icon[b-247ydi0ob0] {
	font-size: 18px;
	color: #0A7FBE;
}

.trend-value[b-247ydi0ob0] {
	font-size: 20px;
	font-weight: 700;
	color: #212529;
}

.trend-description[b-247ydi0ob0] {
	font-size: 12px;
	color: #6c757d;
}

/* Responsive */
@media (max-width: 1400px) {
	.marketing-content-grid[b-247ydi0ob0] {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 1024px) {
	.marketing-bottom-grid[b-247ydi0ob0] {
		grid-template-columns: 1fr;
	}

	.table-header[b-247ydi0ob0] {
		display: none;
	}

	.table-row[b-247ydi0ob0] {
		grid-template-columns: 1fr;
		gap: 12px;
	}

	.trends-grid[b-247ydi0ob0] {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 768px) {
	.marketing-stats-grid[b-247ydi0ob0] {
		grid-template-columns: 1fr;
	}

	.quick-actions-bar[b-247ydi0ob0] {
		flex-direction: column;
	}

	.action-btn[b-247ydi0ob0] {
		width: 100%;
		justify-content: center;
	}
}
/* /Pages/Secure/Marketing/Segments/SegmentBuilder.razor.rz.scp.css */
.segment-builder-wrapper[b-p4ifijfqm7]{
	display: grid;
	height: 100%;
	grid-template-columns: 1fr 1fr;
	grid-template-rows: max-content 1fr;
	padding: 24px;
	gap: 24px;
	
	p.intro{
		font-size: 13px;
		color: #94a3b8;
		margin: 0 0 16px;
		font-weight: 400;
	}
	
	.segment-name-input[b-p4ifijfqm7]{
		grid-column: 1 / -1;
		grid-row: 1;
	}
	
	.segment-builder[b-p4ifijfqm7]{
		grid-row: 2;
	}
	
	.segment-builder-preview[b-p4ifijfqm7]{
		grid-column: 2;
		background-color: #fff;
		border: 1px solid #e2e8f0;
		border-radius: 10px;
		padding: 16px 20px 4px;
	}
}

/* ── Page shell ──────────────────────────────────────────────────── */
/*.sb-page {*/
/*    background: #f0f4f8;*/
/*}*/

/*.sb-page__header {*/
/*    background: #fff;*/
/*    border-bottom: 1px solid #e2e8f0;*/
/*    padding: 0 32px;*/
/*}*/

/*.sb-page__title-row {*/
/*    display: flex;*/
/*    align-items: center;*/
/*    justify-content: space-between;*/
/*    gap: 16px;*/
/*    min-height: 64px;*/
/*}*/

/*.sb-page__title-group {*/
/*    display: flex;*/
/*    align-items: center;*/
/*    gap: 8px;*/
/*    min-width: 0;*/
/*    flex: 1;*/
/*}*/

/*.sb-page__header-actions {*/
/*    display: flex;*/
/*    align-items: center;*/
/*    gap: 10px;*/
/*    flex-shrink: 0;*/
/*}*/

/*.sb-page__error {*/
/*    font-size: 13px;*/
/*    color: #ef4444;*/
/*}*/

/*!* ── Content area ────────────────────────────────────────────────── *!*/
/*.sb-page__content {*/
/*    padding: 28px 32px;*/
/*}*/

/*.sb-workspace {*/
/*    max-width: 920px;*/
/*}*/

/*.sb-workspace__subtitle {*/
/*    font-size: 13px;*/
/*    color: #94a3b8;*/
/*    margin: 0 0 16px;*/
/*    font-weight: 400;*/
/*}*/

/*.sb-workspace__canvas-wrapper {*/
/*    margin-bottom: 16px;*/
/*}*/

/*!* ── Footer ──────────────────────────────────────────────────────── *!*/
/*.sb-workspace__footer {*/
/*    display: flex;*/
/*    align-items: center;*/
/*    gap: 16px;*/
/*    margin-top: 8px;*/
/*}*/

/*.sb-workspace__footer-left {*/
/*    display: flex;*/
/*    align-items: center;*/
/*    gap: 12px;*/
/*}*/

/*.sb-evaluate-btn {*/
/*    display: inline-flex;*/
/*    align-items: center;*/
/*    gap: 7px;*/
/*    background: #fff;*/
/*    border: 1.5px solid #cbd5e1;*/
/*    border-radius: 8px;*/
/*    padding: 8px 16px;*/
/*    font-size: 13px;*/
/*    font-weight: 500;*/
/*    color: #374151;*/
/*    cursor: pointer;*/
/*    transition: border-color 0.15s, box-shadow 0.15s;*/
/*}*/

/*.sb-evaluate-btn:hover:not(:disabled) {*/
/*    border-color: #7c5295;*/
/*    box-shadow: 0 0 0 3px rgba(124, 82, 149, 0.1);*/
/*}*/

/*.sb-evaluate-btn:disabled {*/
/*    opacity: 0.45;*/
/*    cursor: not-allowed;*/
/*}*/

/*.sb-workspace__footer-hint {*/
/*    font-size: 12px;*/
/*    color: #94a3b8;*/
/*}*/

/*!* ── Evaluation results panel ────────────────────────────────────── *!*/
/*.sb-workspace__results {*/
/*    margin-top: 20px;*/
/*    background: #fff;*/
/*    border: 1px solid #e2e8f0;*/
/*    border-radius: 10px;*/
/*    padding: 20px 24px;*/
/*    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);*/
/*}*/
/* /Pages/Secure/Monitor/Monitor.razor.rz.scp.css */
/*
 * The Monitor screen is a wall/desk display that staff leave open all day and glance at constantly.
 * Two consequences drive everything below:
 *
 *   - type is sized for reading at a distance, not for filling in a form;
 *   - nothing moves unless something happened, and when it does it is over in ~200ms. Anything showy
 *     becomes actively irritating within an hour of sitting on a monitor.
 */

.monitor-page[b-1ocu4yn1gd] {
	display: flex;
	flex-direction: column;
	gap: 16px;
	padding: 16px 24px 24px;
	min-width: 0;
}

/* ── Toolbar ────────────────────────────────────────────────────────────────────────────── */

.monitor-toolbar[b-1ocu4yn1gd] {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 16px 24px;
	padding: 16px 20px;
	background: var(--color-neutral-0);
	border: 1px solid var(--color-border-light);
	border-radius: 8px;
}

.monitor-toolbar__spacer[b-1ocu4yn1gd] {
	flex: 1 1 auto;
}

.monitor-occupancy[b-1ocu4yn1gd] {
	display: flex;
	align-items: center;
	gap: 12px;
}

.monitor-occupancy__figure[b-1ocu4yn1gd] {
	font-size: 44px;
	line-height: 1;
	font-weight: var(--font-weight-bold);
	color: var(--color-module-monitor);
	font-variant-numeric: tabular-nums;
}

.monitor-occupancy__labels[b-1ocu4yn1gd] {
	display: flex;
	flex-direction: column;
}

.monitor-occupancy__label[b-1ocu4yn1gd] {
	font-size: 14px;
	font-weight: var(--font-weight-bold);
	color: var(--color-neutral-800);
}

/* Never let this become a headcount in the reader's mind. D23 is explicit that it is a guess. */
.monitor-occupancy__caveat[b-1ocu4yn1gd] {
	font-size: 12px;
	color: var(--color-neutral-500);
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

.monitor-zones[b-1ocu4yn1gd] {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 16px;
	padding-left: 20px;
	border-left: 1px solid var(--color-border-light);
}

.monitor-zone[b-1ocu4yn1gd] {
	display: flex;
	flex-direction: column;
	line-height: 1.25;
}

.monitor-zone__count[b-1ocu4yn1gd] {
	font-size: 18px;
	font-weight: var(--font-weight-bold);
	color: var(--color-neutral-800);
	font-variant-numeric: tabular-nums;
}

.monitor-zone__name[b-1ocu4yn1gd] {
	font-size: 12px;
	color: var(--color-neutral-500);
}

/* ── Window selector ───────────────────────────────────────────────────────────────────── */

.monitor-window[b-1ocu4yn1gd] {
	display: flex;
	border: 1px solid var(--color-border-light);
	border-radius: 6px;
	overflow: hidden;
}

.monitor-window__option[b-1ocu4yn1gd] {
	appearance: none;
	border: none;
	background: var(--color-neutral-0);
	color: var(--color-neutral-700);
	padding: 8px 14px;
	font-size: 13px;
	font-family: inherit;
	cursor: pointer;
	white-space: nowrap;
}

.monitor-window__option + .monitor-window__option[b-1ocu4yn1gd] {
	border-left: 1px solid var(--color-border-light);
}

.monitor-window__option:hover[b-1ocu4yn1gd] {
	background: var(--color-neutral-100);
}

.monitor-window__option.is-selected[b-1ocu4yn1gd] {
	background: var(--color-brand-primary);
	color: var(--color-neutral-0);
	font-weight: var(--font-weight-bold);
}

.monitor-window__option:focus-visible[b-1ocu4yn1gd] {
	outline: 2px solid var(--color-brand-primary);
	outline-offset: -2px;
}

/* ── Connection state ──────────────────────────────────────────────────────────────────── */

/*
 * Understated when healthy and legible when not. A frozen feed that looks live is the worst
 * outcome available here, so this is always rendered rather than only on failure.
 */
.monitor-connection[b-1ocu4yn1gd] {
	display: flex;
	align-items: center;
	gap: 6px;
	font-size: 12px;
	color: var(--color-neutral-500);
	white-space: nowrap;
}

.monitor-connection__dot[b-1ocu4yn1gd] {
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: var(--color-neutral-400);
	flex: 0 0 auto;
}

.monitor-connection--connected .monitor-connection__dot[b-1ocu4yn1gd] {
	background: var(--color-status-success);
}

.monitor-connection--reconnecting .monitor-connection__dot[b-1ocu4yn1gd],
.monitor-connection--connecting .monitor-connection__dot[b-1ocu4yn1gd] {
	background: var(--color-status-warning);
}

.monitor-connection--reconnecting[b-1ocu4yn1gd],
.monitor-connection--connecting[b-1ocu4yn1gd] {
	color: var(--color-status-warning);
}

.monitor-connection--disconnected .monitor-connection__dot[b-1ocu4yn1gd] {
	background: var(--color-status-danger);
}

.monitor-connection--disconnected[b-1ocu4yn1gd] {
	color: var(--color-status-danger);
}

/* ── Notices and empty states ──────────────────────────────────────────────────────────── */

.monitor-notice[b-1ocu4yn1gd] {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 10px 14px;
	border-radius: 6px;
	background: var(--color-status-info-light);
	color: var(--color-neutral-800);
	font-size: 13px;
}

.monitor-empty-state[b-1ocu4yn1gd] {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 8px;
	padding: 64px 24px;
	text-align: center;
	background: var(--color-neutral-0);
	border: 1px solid var(--color-border-light);
	border-radius: 8px;
	color: var(--color-neutral-500);
}

.monitor-empty-state h3[b-1ocu4yn1gd] {
	margin: 0;
	color: var(--color-neutral-800);
}

.monitor-empty-state p[b-1ocu4yn1gd] {
	margin: 0;
	max-width: 46ch;
	font-size: 14px;
}

/* ── Columns ───────────────────────────────────────────────────────────────────────────── */

/*
 * Horizontal scroll rather than a responsive wrap, chosen deliberately. Columns are read as parallel
 * live streams and wrapping them breaks that reading; a min-width floor keeps a site with eight
 * entrances scrollable instead of squeezing eight unusable slivers onto one screen.
 */
.monitor-columns[b-1ocu4yn1gd] {
	display: flex;
	gap: 16px;
	overflow-x: auto;
	align-items: flex-start;
	padding-bottom: 8px;
}

/*
 * Wider than it was. The four-column row puts a 96px photo, a 64px arrow and a 100px time block
 * either side of the detail column, so a card that used to work at 320px now needs roughly 620px
 * before the detail column has anything useful left. The floor keeps the arrow column from being
 * clipped and the zone name from wrapping.
 */
.monitor-column[b-1ocu4yn1gd] {
	flex: 1 1 620px;
	min-width: 520px;
	max-width: 720px;
	background: var(--color-neutral-0);
	border: 1px solid var(--color-border-light);
	border-radius: 8px;
	overflow: hidden;
}

.monitor-column__header[b-1ocu4yn1gd] {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 12px;
	padding: 16px 20px 14px;
	background: var(--color-card-header);
	border-bottom: 1px solid var(--color-border-light);
}

.monitor-column__identity[b-1ocu4yn1gd] {
	min-width: 0;
}

.monitor-column__name[b-1ocu4yn1gd] {
	margin: 0;
	font-size: var(--font-size-large);
	font-weight: var(--font-weight-bold);
	color: var(--color-neutral-900);
}

.monitor-column__zones[b-1ocu4yn1gd] {
	font-size: var(--font-size-small);
	color: var(--color-neutral-600);
}

/*
 * What this column has seen over the selected window. The counts carry the weight and the window
 * label does not, because the label is the same on every card and the numbers are not.
 */
.monitor-column__summary[b-1ocu4yn1gd] {
	flex: 0 0 auto;
	font-size: var(--font-size-small);
	font-weight: var(--font-weight-regular);
	color: var(--color-neutral-600);
	white-space: nowrap;
}

.monitor-column__summary strong[b-1ocu4yn1gd] {
	font-weight: var(--font-weight-semibold);
}

.monitor-column__events[b-1ocu4yn1gd] {
	display: flex;
	flex-direction: column;
	max-height: calc(100vh - 320px);
	overflow-y: auto;
}

.monitor-column__placeholder[b-1ocu4yn1gd] {
	margin: 0;
	padding: 32px 16px;
	text-align: center;
	font-size: 13px;
	color: var(--color-neutral-400);
}

/* ── Event row ─────────────────────────────────────────────────────────────────────────── */

/*
 * Four fixed columns: photo, direction, detail, when/where. Row height is driven by the 96px photo,
 * which is sized to be recognisable across a foyer rather than to sit politely beside the text.
 */
.monitor-event[b-1ocu4yn1gd] {
	display: flex;
	align-items: stretch;
}

/*
 * The outcome is a full-row background wash rather than a word.
 *
 * Read this before changing it. The words "Allowed" and "Denied" and their tick/cross glyphs used to
 * live on this row and were removed at the client's request, so colour now carries more of the
 * outcome than it did. What remains that is *not* colour is the wash's presence and extent (a whole
 * row, or none of it) and the denial reason line, which only ever appears on a denied row. If a
 * redundant shape cue is wanted back, the cheapest place is a check/xmark glyph beside the direction
 * arrow in the 64px column - do not reintroduce the words without asking.
 *
 * --monitor-event-accent survives the removal of the left border because the denial reason text
 * still reads its value.
 */
.monitor-event.is-granted[b-1ocu4yn1gd] {
	--monitor-event-accent: var(--color-status-success);
	--monitor-event-divider: rgba(40, 167, 69, 0.24);

	background: var(--color-status-success-light);
}

.monitor-event.is-denied[b-1ocu4yn1gd] {
	--monitor-event-accent: var(--color-status-danger);
	--monitor-event-divider: rgba(213, 38, 97, 0.2);

	background: var(--color-status-danger-light);
}

/* Each row draws the divider above itself in its own hue, so the last row sits flush against the
   card edge instead of doubling up with it. */
.monitor-event + .monitor-event[b-1ocu4yn1gd] {
	border-top: 1px solid var(--monitor-event-divider);
}

.monitor-event.is-clickable[b-1ocu4yn1gd] {
	cursor: pointer;
}

/* A neutral hover tint is invisible against a washed row, so both outcomes darken their own wash
   instead. */
.monitor-event.is-clickable:hover[b-1ocu4yn1gd] {
	filter: brightness(0.97);
}

.monitor-event.is-clickable:focus-visible[b-1ocu4yn1gd] {
	outline: 2px solid var(--color-brand-primary);
	outline-offset: -2px;
}

/* ── Column 1: photo ───────────────────────────────────────────────────────────────────── */

/* Square and flush to the row's left, top and bottom edges. No radius and no gap: the tile is the
   row's left edge, which is also why the row carries no accent bar there any more. */
.monitor-event__photo[b-1ocu4yn1gd] {
	flex: none;
	width: 96px;
	height: 96px;
}

/*
 * Avatar renders its own DOM, so its grid needs ::deep to be reached. The shared default is
 * `44px 1fr`, sized for the 36px avatar with a name beside it; Monitor passes neither ShowName nor
 * ShowInfo, so the second track is always empty and a 96px image would overflow the first. Overridden
 * here rather than in Avatar.razor.css - every other caller still wants the default.
 */
.monitor-event__photo[b-1ocu4yn1gd]  .avatar-container {
	grid-template-columns: 96px;
	gap: 0;
}

/*
 * At 96px a plain square reads cleaner against the flush edge than the squircle clip does.
 *
 * The child combinator is not decoration: Avatar.razor.css nests this rule inside .avatar-container,
 * so it lands on the same specificity a flat `::deep .avatar-container__image` would, and which of
 * the two won would come down to bundle order. This one is a step higher and settles it.
 */
.monitor-event__photo[b-1ocu4yn1gd]  .avatar-container > .avatar-container__image {
	clip-path: none;
	border-radius: 0;
}

/* The initials fallback inherits its size from the page, which at this tile size is far too small.
   Matched deliberately to the `?` placeholder below so the two read at the same visual weight. */
.monitor-event__photo[b-1ocu4yn1gd]  .avatar-container > .avatar-container__image > span {
	font-family: ui-monospace, Menlo, Consolas, monospace;
	font-size: 22px;
	font-weight: var(--font-weight-semibold);
}

/*
 * An unrecognised scan. Shares the `.customer-avatar-placeholder.unknown-customer` class with the
 * Anonymous Sale avatar in Point of Sale so the two stay recognisably the same thing.
 *
 * The pink fill that pattern uses elsewhere is not carried over at this size: white on #ffaaaa
 * measures 1.81:1, which was tolerable on a 36px chip and is not on a 96px flat field, and a pink
 * tile sitting on a green allowed row also reads as a denial signal it is not. A neutral tile fixes
 * both.
 */
.monitor-event__photo .customer-avatar-placeholder[b-1ocu4yn1gd] {
	width: 96px;
	height: 96px;
	background: var(--color-neutral-200);
	color: var(--color-neutral-500);
	display: flex;
	align-items: center;
	justify-content: center;
	font-family: ui-monospace, Menlo, Consolas, monospace;
	font-size: 22px;
	font-weight: var(--font-weight-semibold);
}

/* ── Column 2: direction ───────────────────────────────────────────────────────────────── */

/*
 * Up for in, down for out - a vertical rotation reads faster at a glance than left/right. Exit takes
 * the info blue so the two also differ by hue, and a denied row overrides both to danger so the whole
 * row stays one colour.
 *
 * Colour comes from CSS rather than Icon's FixedColor so that the denied override is a single rule.
 * The base is the neutral, and in/out tint it only on a granted row: a scan whose direction could not
 * be established is a real state the feed has to render, and it must not inherit either arrow's
 * meaning by omission.
 */
.monitor-event__direction[b-1ocu4yn1gd] {
	flex: none;
	width: 64px;
	display: flex;
	align-items: center;
	justify-content: center;
	--veleo-icon-color: var(--color-neutral-400);
}

.monitor-event.is-granted .monitor-event__direction.is-entry[b-1ocu4yn1gd] {
	--veleo-icon-color: var(--color-status-success);
}

.monitor-event.is-granted .monitor-event__direction.is-exit[b-1ocu4yn1gd] {
	--veleo-icon-color: var(--color-status-info);
}

/* Last, and unqualified by direction, so a denial is one hue from the arrow to the reason - including
   the unknown-direction case. */
.monitor-event.is-denied .monitor-event__direction[b-1ocu4yn1gd] {
	--veleo-icon-color: var(--color-status-danger);
}

/* ── Column 3: detail ──────────────────────────────────────────────────────────────────── */

.monitor-event__detail[b-1ocu4yn1gd] {
	flex: 1;
	min-width: 0;
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: 12px 14px 12px 0;
}

/* The single most valuable line on the screen, and the headline of a denied row: the specific reason,
   never a bare "Access Denied". 4.08:1 on the danger wash - under 4.5:1, but this is the app's own
   danger/danger-light pair used exactly as designed. */
.monitor-event__reason[b-1ocu4yn1gd] {
	font-size: var(--font-size-medium);
	line-height: 1.25;
	font-weight: var(--font-weight-semibold);
	color: var(--monitor-event-accent);
}

.monitor-event__name-row[b-1ocu4yn1gd] {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 8px;
	min-width: 0;
}

/* The headline of an allowed row. Anonymous admissions use this too and in the same full ink - an
   anonymous admission is a normal admission, not a degraded one. */
.monitor-event__name[b-1ocu4yn1gd] {
	font-size: var(--font-size-large);
	line-height: 1.25;
	font-weight: var(--font-weight-semibold);
	color: var(--color-neutral-900);
}

/* The same person's name, demoted to the supporting line under a denial reason. */
.monitor-event__subline[b-1ocu4yn1gd] {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 8px;
	min-width: 0;
	margin-top: 5px;
}

/* Full-opacity neutrals throughout, never an rgba(). Muted ink over a coloured wash fails contrast
   in a way it does not over white. */
.monitor-event__subname[b-1ocu4yn1gd] {
	font-size: var(--font-size-small);
	line-height: 1.45;
	color: var(--color-neutral-700);
}

.monitor-event__badge[b-1ocu4yn1gd] {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	padding: 1px 7px;
	border-radius: 10px;
	font-size: var(--font-size-tiny);
	font-weight: var(--font-weight-bold);
	text-transform: uppercase;
	letter-spacing: 0.03em;
	white-space: nowrap;
}

/* Safeguarding, so it is the loudest badge on the row by design. */
.monitor-event__badge--minor[b-1ocu4yn1gd] {
	background: var(--color-status-warning);
	color: var(--color-neutral-0);
}

.monitor-event__badge--birthday[b-1ocu4yn1gd] {
	background: var(--color-status-info-light);
	color: var(--color-brand-primary-dark);
}

/* ── Column 4: when and where ──────────────────────────────────────────────────────────── */

.monitor-event__when[b-1ocu4yn1gd] {
	flex: none;
	width: 100px;
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
	justify-content: center;
	text-align: right;
	padding: 12px 16px 12px 0;
}

.monitor-event__time[b-1ocu4yn1gd] {
	font-size: 15px;
	line-height: 1.2;
	font-weight: var(--font-weight-semibold);
	color: var(--color-neutral-900);
	font-variant-numeric: tabular-nums;
}

.monitor-event__relative[b-1ocu4yn1gd] {
	font-size: var(--font-size-tiny);
	line-height: 1.3;
	color: var(--color-neutral-500);
	margin-top: 1px;
}

/* No "ZONE" label: the zone name on its own is understood, and a label would cost a line on every
   row to say something the reader already knows. */
.monitor-event__zone[b-1ocu4yn1gd] {
	font-size: var(--font-size-small);
	line-height: 1.3;
	font-weight: var(--font-weight-semibold);
	color: var(--color-neutral-900);
	margin-top: 10px;
}

/* ── New event animation ───────────────────────────────────────────────────────────────── */

/*
 * CSS-only, keyed off the row's @key(EventId) so the browser moves the existing rows down itself and
 * only the genuinely new row animates. Fast on purpose - see the note at the top of this file.
 */
@keyframes monitor-event-in-b-1ocu4yn1gd {
	from {
		opacity: 0;
		transform: translateY(-8px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

.monitor-event.is-new[b-1ocu4yn1gd] {
	animation: monitor-event-in-b-1ocu4yn1gd 200ms ease-out;
}

/*
 * Switched off entirely rather than shortened. Somebody who has asked their operating system for
 * reduced motion has asked for no motion, and this screen is in their peripheral vision all day.
 */
@media (prefers-reduced-motion: reduce) {
	.monitor-event.is-new[b-1ocu4yn1gd] {
		animation: none;
	}

	.monitor-window__option[b-1ocu4yn1gd],
	.monitor-event[b-1ocu4yn1gd] {
		transition: none;
	}
}
/* /Pages/Secure/Pos/BusinessDays.razor.rz.scp.css */
.business-days-page__content[b-6b3urrixwz] {
	display: flex;
	flex-direction: column;
	min-height: 0;
	overflow: hidden;
}

.business-days-page__content[b-6b3urrixwz]  .mobile-tab-panel {
	flex: 1;
	min-height: 0;
}

.business-day-too-long-banner[b-6b3urrixwz] {
	display: flex;
	align-items: center;
	gap: 8px;
	margin: 16px 24px 0;
	padding: 12px 12px;
	border-radius: 8px;
	background: #FEF2F2;
	color: #991B1B;
	font-size: 13px;
	flex-shrink: 0;
	line-height: 1.25;
	border: 1px solid #FEE2E2;
}

.business-days-loading[b-6b3urrixwz] {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 10px;
	height: 100%;
}

.panel-title[b-6b3urrixwz] {
	font-size: 24px;
	font-weight: 600;
	color: var(--color-surface-app);
	margin: 0;
}

/* Left panel: business day list */

.business-days-panel[b-6b3urrixwz] {
	display: flex;
	flex-direction: column;
	gap: 12px;
	height: 100%;
	min-height: 0;
}

.business-day-site-select[b-6b3urrixwz] {
	width: 100%;
	margin-bottom: 12px;
}

.business-day-list-container[b-6b3urrixwz] {
	flex: 1;
	min-height: 0;
	overflow-y: auto;
}

.business-day-list-container--empty[b-6b3urrixwz] {
	display: flex;
	flex-direction: column;
}

.business-day-month-title[b-6b3urrixwz] {
	font-size: 13px;
	font-weight: var(--font-weight-bold);
	color: #333;
	margin: 16px 0 8px;
}

.business-day-month-title:first-child[b-6b3urrixwz] {
	margin-top: 0;
}

[b-6b3urrixwz] .business-day-list {
	width: 100%;
	margin-bottom: 4px;
}

[b-6b3urrixwz] tr.business-day-row {
	font-size: 12px;
	cursor: pointer;
}

[b-6b3urrixwz] tr.business-day-row.active td {
	background: var(--color-surface-app) !important;
}

[b-6b3urrixwz] tr.business-day-row.active .business-day-row__date,
[b-6b3urrixwz] tr.business-day-row.active .business-day-row__meta,
[b-6b3urrixwz] tr.business-day-row.active .business-day-row__total {
	color: white;
}

.business-day-row__date[b-6b3urrixwz] {
	font-size: 12px;
	font-weight: var(--font-weight-bold);
	color: #333;
}

.business-day-row__meta[b-6b3urrixwz] {
	font-size: 11px;
	color: #888;
}

.business-day-row__total[b-6b3urrixwz] {
	font-size: 12px;
	font-weight: var(--font-weight-bold);
	color: #333;
}

/* Right panel: selected business day summary */

.business-day-panel[b-6b3urrixwz] {
	display: flex;
	flex-direction: column;
	gap: 20px;
	padding: 25px;
}

.business-day-panel--empty[b-6b3urrixwz] {
	height: 100%;
	min-height: 0;
	box-sizing: border-box;
}

.business-day-list-container--empty[b-6b3urrixwz]  .pos-empty-state,
.business-day-panel--empty[b-6b3urrixwz]  .pos-empty-state {
	flex: 1;
	min-height: 0;
}

.business-day-info-row[b-6b3urrixwz] {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 16px;
}

.business-day-info-column[b-6b3urrixwz] {
	display: flex;
	flex-direction: column;
	gap: 10px;
	flex: 1;
}

.business-day-info-list[b-6b3urrixwz] {
	display: grid;
	grid-template-columns: max-content 1fr;
	column-gap: 12px;
	row-gap: 4px;
	align-items: baseline;
}

.business-day-info-item[b-6b3urrixwz] {
	display: contents;
	font-size: 13px;
}

.business-day-info-label[b-6b3urrixwz] {
	color: #000;
	font-size: 14px;
	font-weight: var(--font-weight-medium);
	line-height: normal;
}

.business-day-info-value[b-6b3urrixwz] {
	font-weight: var(--font-weight-regular);
}

.close-day-btn[b-6b3urrixwz] {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 10px 20px;
	border: none;
	border-radius: 8px;
	background: var(--color-surface-app);
	color: white;
	font-size: 13px;
	font-weight: var(--font-weight-bold);
	white-space: nowrap;
	cursor: pointer;
	transition: opacity 0.2s;
}

.close-day-btn:hover:not(:disabled)[b-6b3urrixwz] {
	opacity: 0.85;
}

.close-day-btn:disabled[b-6b3urrixwz] {
	opacity: 0.4;
	cursor: not-allowed;
}

.variance-value[b-6b3urrixwz] {
	display: inline-flex;
	align-items: center;
	gap: 4px;
}

.variance-up[b-6b3urrixwz] {
	color: #10B981;
}

.variance-down[b-6b3urrixwz] {
	color: #EF4444;
}
/* /Pages/Secure/Pos/Components/PosAmountReadoutRow.razor.rz.scp.css */
.pos-amount-readout-row[b-e2xxduw5ps] {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 16px;
}

.pos-amount-readout-row.pos-amount-readout-row--margin-compact[b-e2xxduw5ps] {
	margin-bottom: 4px;
}

.pos-amount-readout-row__readout[b-e2xxduw5ps] {
	flex: 1 1 auto;
	display: flex;
	align-items: center;
	background: #F2F2F2;
	border: 1px solid #ccc;
	border-radius: 8px;
	padding: 8px 16px;
}

.pos-amount-readout-row__readout--cash[b-e2xxduw5ps] {
	align-items: center;
	justify-content: space-between;
	font-size: 28px;
	font-weight: var(--font-weight-extrabold);
	line-height: 1.25;
	color: var(--color-surface-app);
}

.pos-amount-readout-row__readout--value[b-e2xxduw5ps] {
	justify-content: space-between;
}

.pos-amount-readout-row__readout--denomination[b-e2xxduw5ps] {
	background: #E8EAFE;
	border: none;
	align-items: center;
	justify-content: space-between;
}

.pos-amount-readout-row__readout--denomination .pos-amount-readout-row__currency-symbol[b-e2xxduw5ps],
.pos-amount-readout-row__readout--denomination .pos-amount-readout-row__value[b-e2xxduw5ps] {
	color: #4A43AF;
}

.pos-amount-readout-row__clear-btn[b-e2xxduw5ps] {
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	border: none;
	border-radius: 50%;
	background: #BA1212;
	padding: 0;

	&:hover {
		background: color-mix(in srgb, #BA1212 90%, transparent);
	}
}

.pos-amount-readout-row__value[b-e2xxduw5ps] {
	font-size: 28px;
	line-height: 1.25;
	font-weight: var(--font-weight-bold);
	color: var(--color-surface-app);
}

.pos-amount-readout-row__readout--cash .pos-amount-readout-row__value[b-e2xxduw5ps] {
	flex: 1;
	text-align: right;
	font-weight: var(--font-weight-bold);
}

.pos-amount-readout-row__currency-symbol[b-e2xxduw5ps] {
	font-size: 20px;
	color: #B0B3BF;
	font-weight: var(--font-weight-semibold);
	flex-shrink: 0;
}

.pos-amount-readout-row__unit[b-e2xxduw5ps] {
	font-size: 18px;
	color: #888;
}
/* /Pages/Secure/Pos/Components/PosOptionalNoteField.razor.rz.scp.css */
.pos-optional-note-field__label[b-47ocq8n1ms] {
	font-size: 12px;
	font-weight: var(--font-weight-bold);
	color: var(--color-neutral-600);
	line-height: normal;
	margin-bottom: 8px;
}

.pos-optional-note-field__label-row[b-47ocq8n1ms] {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 8px;
	margin-bottom: 8px;

	&:not(:has(.pos-optional-note-field__label)) {
		justify-content: flex-end;
	}
}

.pos-optional-note-field__label-row .pos-optional-note-field__label[b-47ocq8n1ms] {
	margin-bottom: 0;
	flex: 1 1 auto;
	min-width: 0;
}

.pos-optional-note-field--item-note .pos-optional-note-field__label[b-47ocq8n1ms] {
	font-size: 14px;
	font-weight: var(--font-weight-regular);
}

.pos-optional-note-field__clear-btn[b-47ocq8n1ms] {
	background: none;
	border: none;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	height: 24px;
	width: 24px;
	padding: 0;
	--veleo-icon-color: var(--color-neutral-400);
}

.pos-optional-note-field__clear-btn:hover[b-47ocq8n1ms] {
	--veleo-icon-color: var(--color-pos-status-unavailable);
}

.pos-optional-note-field--error .pos-optional-note-field__label[b-47ocq8n1ms] {
	font-weight: var(--font-weight-regular);
	color: var(--color-pos-status-unavailable);
	margin-bottom: 8px;
}

.pos-optional-note-field--offset-top[b-47ocq8n1ms] {
	margin-top: 24px;
}

.pos-optional-note-field__input[b-47ocq8n1ms] {
	width: 100%;
	box-sizing: border-box;
	resize: vertical;
	border-radius: 0.5rem;
	border: 1px solid var(--color-pos-border);
	background: var(--color-pos-surface-input);
	padding: 12px;
	font-size: 14px;
	font-weight: var(--font-weight-regular);
	line-height: normal;
	font-family: inherit;
	color: var(--color-pos-text);
}

.pos-optional-note-field__input[b-47ocq8n1ms]::placeholder {
	color: var(--color-pos-currency-muted);
	font-size: 14px;
	font-weight: var(--font-weight-regular);
	line-height: normal;
	opacity: 1;
}
/* /Pages/Secure/Pos/Components/PosQtyControl.razor.rz.scp.css */
.pos-qty-control[b-2kgbskh05a] {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-shrink: 0;
}

.pos-qty-control--large[b-2kgbskh05a] {
	background: #F2F2F2;
	border: 1px solid #ccc;
	border-radius: 8px;
	font-size: 32px;
	line-height: 1.25;
	font-weight: var(--font-weight-bold);
	padding: 8px 16px;
	margin-bottom: 16px;
	color: var(--color-surface-app);
	width: 100%;
}

.pos-qty-control--compact[b-2kgbskh05a] {
	gap: 10px;
	background: var(--color-pos-surface-input);
	border: 1px solid var(--color-pos-border);
	border-radius: 8px;
	padding: 4px 10px;
	color: var(--color-pos-text);
}

.pos-qty-control__btn[b-2kgbskh05a] {
	background: none;
	border: none;
	display: flex;
	align-items: center;
	justify-content: center;
	color: inherit;
}

.pos-qty-control--large .pos-qty-control__btn[b-2kgbskh05a] {
	--veleo-icon-size: 32px;
}

.pos-qty-control__btn:disabled[b-2kgbskh05a] {
	opacity: 0.35;
}

.pos-qty-control--large .pos-qty-control__value[b-2kgbskh05a] {
	flex: 1;
	text-align: center;
}

.pos-qty-control--compact .pos-qty-control__value[b-2kgbskh05a] {
	min-width: 20px;
	text-align: center;
	font-size: 16px;
	font-weight: var(--font-weight-bold);
}
/* /Pages/Secure/Pos/Components/PosRegisterSelector.razor.rz.scp.css */
.register-selector[b-rs81ovtjyp] {
	display: flex;
	flex-direction: column;
	flex: 1;
	min-height: 0;
	height: 100%;
	background: var(--color-surface-page);
}

.register-selector-header[b-rs81ovtjyp] {
	display: flex;
	flex-direction: column;
	flex-shrink: 0;
	padding: 40px 76px 34px;
}

.business-day-too-long-banner[b-rs81ovtjyp] {
	display: flex;
	align-items: center;
	gap: 8px;
	margin: 16px 76px 0;
	padding: 12px 12px;
	border-radius: 8px;
	background: #FEF2F2;
	color: #991B1B;
	font-size: 13px;
	flex-shrink: 0;
	line-height: 1.25;
	border: 1px solid #FEE2E2;
}

.register-selector-eyebrow[b-rs81ovtjyp],
.register-selector-business-day[b-rs81ovtjyp] {
	font-size: var(--font-size-normal);
	line-height: normal;
	color: var(--color-pos-text-muted);
}

.register-selector-header h2[b-rs81ovtjyp] {
	margin: 0;
	font-size: var(--font-size-xxlarge);
	font-weight: var(--font-weight-bold);
	color: var(--color-surface-app);
}

.register-selector-business-day[b-rs81ovtjyp] {
	margin-top: 16px;
}

.register-selector-body[b-rs81ovtjyp] {
	display: flex;
	flex-direction: column;
	flex: 1;
	min-height: 0;
	padding: 0 76px 76px;
	gap: 16px;
	overflow: hidden;
}

.register-selector-body--centered[b-rs81ovtjyp] {
	align-items: center;
	justify-content: center;
}

.register-selector-empty-state[b-rs81ovtjyp] {
	display: flex;
	flex: 1;
	min-height: 0;
	align-items: center;
	justify-content: center;
	background: var(--color-pos-surface-muted);
	border-radius: 12px;
}

.register-selector-empty-content[b-rs81ovtjyp] {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 32px;
	text-align: center;
}

.register-selector-empty-message[b-rs81ovtjyp] {
	margin: 0;
	font-size: var(--font-size-xlarge);
	font-weight: var(--font-weight-semibold);
	line-height: normal;
	text-align: center;
	color: var(--color-pos-text-secondary);
}

.deferred-counts-section[b-rs81ovtjyp] {
	display: flex;
	flex-direction: column;
	gap: 12px;
	flex-shrink: 0;
	overflow-y: auto;
}

.deferred-counts-section .register-selector-eyebrow[b-rs81ovtjyp] {
	display: block;
}

.register-grid[b-rs81ovtjyp] {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
	gap: 15px;
	flex-shrink: 0;
}

.register-card[b-rs81ovtjyp] {
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
	gap: 8px;
	min-height: 165px;
	padding: 20px 25px;
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: var(--style-border-radius);
}

.register-card-header[b-rs81ovtjyp] {
	display: grid;
	grid-template-columns: 1fr 30px;
	column-gap: 15px;
	align-items: center;
	width: 100%;
	min-width: 0;
}

.register-card-name[b-rs81ovtjyp] {
	font-size: var(--font-size-medium);
	font-weight: var(--font-weight-semibold);
	line-height: normal;
	color: var(--color-neutral-700);
	text-wrap: balance;
}

.register-card-header[b-rs81ovtjyp]  .veleo-icon {
	justify-self: end;
	align-self: center;
}

.register-card[b-rs81ovtjyp]  .pill {
	align-self: flex-start;
	font-size: 9px;
	font-weight: var(--font-weight-regular);
	text-transform: none;
	padding: 2px 6px;
	border-radius: 5px;
}

.register-card-footer[b-rs81ovtjyp] {
	display: flex;
	align-items: flex-end;
	margin-top: auto;
	width: 100%;
	min-height: 0;
}

.register-card-footer--stacked[b-rs81ovtjyp] {
	flex-direction: column;
	align-items: stretch;
	gap: 16px;
}

.register-card-footer[b-rs81ovtjyp]  button.button {
	width: 100%;
	margin: 0;
	text-transform: none;
	font-weight: var(--font-weight-semibold);
	font-size: 14px;
	line-height: normal;
	padding: 12px 16px;
	border-radius: 8px;
}

.register-card-shift-holder[b-rs81ovtjyp] {
	display: flex;
	align-items: center;
	gap: 8px;
	min-width: 0;
}

.register-card-shift-name[b-rs81ovtjyp] {
	font-size: 12px;
	font-style: normal;
	font-weight: var(--font-weight-bold);
	line-height: normal;
	color: var(--color-surface-app);
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.register-card-shift-avatar[b-rs81ovtjyp] {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 38px;
	height: 38px;
	border-radius: 6px;
	background: var(--color-pos-surface-subtle);
	color: var(--color-pos-text-secondary);
	font-size: 12px;
	font-weight: var(--font-weight-bold);
	flex-shrink: 0;
}

.register-card-shift-time[b-rs81ovtjyp] {
	display: flex;
	align-items: center;
	gap: 6px;
	font-size: 12px;
	font-style: italic;
	font-weight: var(--font-weight-medium);
	line-height: normal;
	color: var(--color-neutral-600);
}
/* /Pages/Secure/Pos/Dialogs/CardPaymentDialog.razor.rz.scp.css */
/* /Pages/Secure/Pos/Dialogs/CashPaymentDialog.razor.rz.scp.css */
.cash-amount-label[b-16meu2ygpq] {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	font-size: 12px;
	line-height: 1.25;
	color: #666;
	margin-bottom: 8px;
}

.cash-amount-total[b-16meu2ygpq] {
	color: #858894;
	font-weight: var(--font-weight-medium);
}

.cash-quick-actions[b-16meu2ygpq] {
	display: flex;
	gap: 8px;
}

.cash-quick-btn[b-16meu2ygpq] {
	flex: 1 1 0;
	border-radius: 8px;
	padding: 12px 8px;
	font-size: 12px;
	line-height: normal;
	font-weight: var(--font-weight-medium);
	text-align: center;
}

.cash-quick-btn-exact[b-16meu2ygpq] {
	background: #D6EFDF;
	border: 1px solid #9FD582;
	color: #598167;
}

.cash-quick-btn-roundup[b-16meu2ygpq] {
	background: #E8EAFD;
	color: #4A44B1;
	border: 1px solid #C3C0EE;
}

.cash-denominations[b-16meu2ygpq] {
	display: flex;
	gap: 8px;
}

.cash-denomination-btn[b-16meu2ygpq] {
	flex: 1 1 0;
	background: #1F693A;
	color: white;
	border: none;
	border-radius: 8px;
	padding: 12px 0;
	font-size: 12px;
	line-height: normal;
	font-weight: var(--font-weight-medium);
}

.cash-status[b-16meu2ygpq] {
	display: flex;
	align-items: center;
	justify-content: space-between;
	border-radius: 8px;
	padding: 16px;
	font-size: 14px;
	color: var(--color-surface-app);
	font-weight: var(--font-weight-regular);	
	.cash-status-amount {
		font-weight: var(--font-weight-bold);
	}
}

.cash-status-owing[b-16meu2ygpq] {
	background: #FCE0E0;
	.cash-status-amount {
		color: #B32625;
	}
}

.cash-status-exact[b-16meu2ygpq] {
	background: #FDEEDF;
	.cash-status-amount {
		color: #996A0E;
	}
}

.cash-status-change[b-16meu2ygpq] {
	background: #D6EFDF;
	.cash-status-amount {
		color: #17803D;
	}
	
}
/* /Pages/Secure/Pos/Dialogs/CloseShiftDialog.razor.rz.scp.css */
.open-shift-subtitle[b-o2nn0484d0] {
	font-size: var(--font-size-small);
	font-style: normal;
	line-height: normal;
	font-weight: var(--font-weight-medium);
	color: var(--color-neutral-600);
	margin-bottom: var(--dialog-padding);
}

.cash-amount-label[b-o2nn0484d0] {
	font-size: 12px;
	line-height: normal;
	color: var(--color-neutral-600);
	margin-bottom: 8px;
	font-weight: var(--font-weight-light);
}

.denomination-columns[b-o2nn0484d0] {
	display: flex;
	gap: 12px;
	margin-bottom: 12px;
}

.denomination-column[b-o2nn0484d0] {
	flex: 1 1 0;
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.denomination-column-header[b-o2nn0484d0] {
	font-size: 12px;
	font-weight: var(--font-weight-semibold);
	color: var(--color-neutral-600);
	margin-bottom: 2px;
}

.denomination-row[b-o2nn0484d0] {
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 12px;
	color: var(--color-neutral-600);
	text-align: left;

	button {
		background: var(--color-pos-surface-input);
		border: 1px solid var(--color-pos-border);
		text-align: center;
		height: 32px;
		width: 52px;
		font-size: 18px;
		line-height: 1.25;
		font-weight: var(--font-weight-extrabold);
		border-radius: 8px;
	}

	.denomination-value[b-o2nn0484d0] {
		color: var(--color-surface-app);
		font-weight: var(--font-weight-bold);
	}
}

.denomination-row.active[b-o2nn0484d0] {
	button {
		border: 2px solid var(--color-pos-accent);
		color: var(--color-pos-accent);
	}
	.denomination-value[b-o2nn0484d0] {
		color: var(--color-pos-accent);
	}
}

.denomination-prompt[b-o2nn0484d0] {
	font-size: var(--font-size-small);
	font-style: normal;
	font-weight: var(--font-weight-medium);
	line-height: normal;
	color: var(--color-neutral-600);
	margin-bottom: 8px;
}

@media (max-height: 1024px) {
	.denomination-prompt[b-o2nn0484d0] {
		display: none;
	}
}

.denomination-prompt-highlight[b-o2nn0484d0] {
	color: var(--color-pos-accent);
	font-size: var(--font-size-small);
	font-style: normal;
	font-weight: var(--font-weight-medium);
	line-height: normal;
}

.close-shift-options[b-o2nn0484d0] {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.close-shift-option[b-o2nn0484d0] {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	text-align: left;
	background: var(--color-pos-surface-input);
	border: 1px solid var(--color-pos-border);
	border-radius: 8px;
	padding: 14px;
}

.close-shift-option-icon[b-o2nn0484d0] {
	flex: 0 0 auto;
	margin-top: 2px;
}

.close-shift-option-title[b-o2nn0484d0] {
	font-size: var(--font-size-normal);
	font-style: normal;
	font-weight: var(--font-weight-medium);
	line-height: normal;
	color: var(--color-pos-text);
	margin-bottom: 4px;
}

.close-shift-option-subtitle[b-o2nn0484d0] {
	font-size: var(--font-size-small);
	font-style: normal;
	font-weight: var(--font-weight-light);
	line-height: normal;
	color: var(--color-neutral-600);
}

.close-shift-defer-alert[b-o2nn0484d0] {
	align-self: stretch;
	width: 100%;
	display: flex;
	align-items: flex-start;
	gap: 8px;
	background: var(--color-pos-danger-surface);
	border-radius: 8px;
	padding: 16px 28px;
	text-align: left;
}

.close-shift-defer-alert-text[b-o2nn0484d0] {
	color: var(--color-pos-text);
	font-size: var(--font-size-normal);
	font-weight: var(--font-weight-light);
	line-height: normal;
}

.close-shift-defer-alert-name[b-o2nn0484d0] {
	font-weight: var(--font-weight-semibold);
}

.close-shift-variance-details[b-o2nn0484d0] {
	align-self: stretch;
	display: flex;
	flex-direction: column;
	gap: 16px;
	text-align: left;
}

.modal-container[b-o2nn0484d0] {
	max-height: 90vh;
	overflow-y: auto;
	overflow-x: hidden;
	margin-inline: calc(var(--dialog-padding) * -1);
	padding-inline: var(--dialog-padding);
	box-sizing: border-box;
}
/* /Pages/Secure/Pos/Dialogs/EditCartDiscountDialog.razor.rz.scp.css */
.modifier-group[b-nbjt8f1gjj] {
	margin-bottom: var(--dialog-padding);
}

.modifier-group:last-child[b-nbjt8f1gjj] {
	margin-bottom: 0;
}

.modifier-running-total[b-nbjt8f1gjj] {
	margin: var(--dialog-padding) calc(var(--dialog-padding) * -1) 0;
}

.modifier-group-title[b-nbjt8f1gjj] {
	font-size: 14px;
	font-weight: var(--font-weight-regular);
	line-height: normal;
	color: #666;
	margin: 0 0 8px 0;
}

.modifier-options[b-nbjt8f1gjj] {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.modifier-option[b-nbjt8f1gjj] {
	padding: 12px;
	border: 1px solid #ccc;
	background: #F2F2F2;
	border-radius: 8px;
	font-size: 14px;
	line-height: 1.25;
	font-weight: var(--font-weight-medium);
	color: var(--color-surface-app);
	cursor: pointer;
	transition: all 0.2s;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	text-align: left;
}

.modifier-option:hover:not(:disabled)[b-nbjt8f1gjj] {
	border-color: var(--color-pos-accent);
}

.modifier-option.selected[b-nbjt8f1gjj] {
	background: var(--color-pos-accent);
	border-color: var(--color-pos-accent);
	color: white;
}

.modifier-option:disabled[b-nbjt8f1gjj] {
	cursor: not-allowed;
	color: #292E404D;
}

.discount-option-left[b-nbjt8f1gjj] {
	display: flex;
	align-items: center;
	gap: 8px;
	flex: 1;
	min-width: 0;
	text-align: left;
	text-wrap: balance;
}

.modifier-option-price[b-nbjt8f1gjj] {
	flex-shrink: 0;
	font-size: 12px;
	color: #999;
	font-weight: var(--font-weight-medium);
	line-height: normal;
}

.modifier-option.selected .modifier-option-price[b-nbjt8f1gjj] {
	color: rgba(255, 255, 255, 0.75);
}

.pos-discount-empty[b-nbjt8f1gjj] {
	font-size: 13px;
	color: #6c757d;
}

.loss-warning[b-nbjt8f1gjj] {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-top: 16px;
	padding: 12px 12px;
	background: #FEF2F2;
	border: 1px solid #FEE2E2;
	border-radius: 8px;
	font-size: 13px;
	color: #991B1B;
}
/* /Pages/Secure/Pos/Dialogs/EnterDiscountValueDialog.razor.rz.scp.css */
.modifier-running-total[b-a5mru07bd9] {
	margin: var(--dialog-padding) calc(var(--dialog-padding) * -1) 0;
}
/* /Pages/Secure/Pos/Dialogs/EnterPinDialog.razor.rz.scp.css */
.pin-description[b-mtpqdwsikr] {
	font-size: 14px;
	color: #666;
	margin: 0 0 12px 0;
}

.pin-dots[b-mtpqdwsikr] {
	display: flex;
	gap: 8px;
	margin-bottom: 12px;
}

.pin-dot[b-mtpqdwsikr] {
	flex: 1;
	aspect-ratio: 1;
	background: #F2F2F2;
	border: 1px solid #ccc;
	border-radius: 8px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.pin-dot-fill[b-mtpqdwsikr] {
	width: 10px;
	height: 10px;
	border-radius: 50%;
	background: #999;
}

.pin-error[b-mtpqdwsikr] {
	font-size: 13px;
	color: #BA1212;
	margin: 12px 0 0 0;
}
/* /Pages/Secure/Pos/Dialogs/OpenShiftDialog.razor.rz.scp.css */
.modal-container[b-sokshchstw]  .fluent-dialog-header.no-padding {
	--dialog-padding: 4px;
}

.open-shift-subtitle[b-sokshchstw] {
	font-size: var(--font-size-small);
	line-height: normal;
	font-weight: var(--font-weight-medium);
	color: var(--color-neutral-600);
	margin-bottom: var(--dialog-padding);
}

.cash-amount-label[b-sokshchstw] {
	font-size: var(--font-size-small);
	line-height: normal;
	font-weight: var(--font-weight-light);
	color: var(--color-neutral-600);
	margin-bottom: 8px;
}

.denomination-columns[b-sokshchstw] {
	display: flex;
	gap: 12px;
	margin-bottom: 12px;
}

.denomination-column[b-sokshchstw] {
	flex: 1 1 0;
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.denomination-column-header[b-sokshchstw] {
	font-size: var(--font-size-small);
	font-style: normal;
	font-weight: var(--font-weight-medium);
	line-height: normal;
	color: var(--color-neutral-600);
	margin-bottom: 4px;
}

.denomination-row[b-sokshchstw] {
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 12px;
	color: #666;
	text-align: left;

	.denomination-multiplier {
		font-weight: var(--font-weight-light);
	}
	
	button[b-sokshchstw] {
		background: #F2F2F2;
		border: 1px solid #ccc;
		text-align: center;
		height: 32px;
		width: 48px;
		font-size: 18px;
		line-height: 1.25;
		font-weight: var(--font-weight-bold);
		border-radius: 8px;
	}
	
	.denomination-value[b-sokshchstw] {
		color: var(--color-surface-app);
		font-weight: var(--font-weight-semibold);
	}
}

.denomination-row.active[b-sokshchstw] {
	button {
		border: 2px solid var(--color-pos-accent);
		color: var(--color-pos-accent);
	}
	.denomination-value[b-sokshchstw] {
		color: var(--color-pos-accent);
	}
}

.denomination-prompt[b-sokshchstw] {
	font-size: var(--font-size-small);
	font-style: normal;
	font-weight: var(--font-weight-medium);
	line-height: normal;
	color: var(--color-neutral-600);
	margin-bottom: 12px;
}

@media (max-height: 1024px) {
	.denomination-prompt[b-sokshchstw] {
		display: none;
	}
}

.denomination-prompt-highlight[b-sokshchstw] {
	color: var(--color-pos-accent);
	font-size: var(--font-size-small);
	font-style: normal;
	font-weight: var(--font-weight-medium);
	line-height: normal;
}

.modal-container[b-sokshchstw] {
	max-height: 90vh;
	overflow-y: auto;
}
/* /Pages/Secure/Pos/Dialogs/PaymentCompleteDialog.razor.rz.scp.css */
.payment-complete-tender-label[b-qy0hj1julr] {
	align-items: center;
}

.payment-complete-change-hero[b-qy0hj1julr] {
	align-self: stretch;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 8px;
	padding: 12px 0;
	margin: -24px 24px 0;
	border-radius: 8px;
	background: #D6EFDF;
	text-align: center;
}

.payment-complete-change-hero-label[b-qy0hj1julr] {
	font-size: 10px;
	font-weight: var(--font-weight-medium);
	color: var(--color-surface-app);
	line-height: normal;
	text-transform: uppercase;
}

.payment-complete-change-hero-amount[b-qy0hj1julr] {
	font-size: 28px;
	font-weight: var(--font-weight-semibold);
	color: var(--color-surface-app);
	line-height: 1;
	text-align: center;
}

.payment-complete-icon-red[b-qy0hj1julr] {
	background: #FCE0E0;
	color: #B32625;
}

.payment-complete-tender-text[b-qy0hj1julr] {
	display: flex;
	flex-direction: column;
	gap: 2px;
	min-width: 0;
}

.payment-complete-tender-method[b-qy0hj1julr] {
	font-size: 14px;
	font-weight: var(--font-weight-bold);
	color: var(--color-surface-app);
	line-height: normal;
}

.payment-complete-tender-detail[b-qy0hj1julr] {
	font-size: 12px;
	font-weight: var(--font-weight-regular);
}

.payment-complete-tender-right[b-qy0hj1julr] {
	color: #222;
	text-align: right;
	font-size: 12px;
	font-weight: var(--font-weight-regular);
	line-height: normal;
}
/* /Pages/Secure/Pos/Dialogs/PosCashMovementDialog.razor.rz.scp.css */
/* /Pages/Secure/Pos/Dialogs/ProductModifierDialog.razor.rz.scp.css */
.product-modifier-dialog.modal-container[b-54hhtemqi3] {
	max-height: 80vh;
	display: flex;
	flex-direction: column;
	box-sizing: border-box;
}

.product-modifier-dialog[b-54hhtemqi3]  .fluent-dialog-header.no-padding,
.product-modifier-dialog[b-54hhtemqi3]  .fluent-dialog-footer {
	flex-shrink: 0;
}

.product-modifier-dialog[b-54hhtemqi3]  .fluent-dialog-body.veleo-modal-body {
	flex: 1 1 auto;
	min-height: 0;
}

.product-modifier-dialog .veleo-modal-content[b-54hhtemqi3] {
	display: flex;
	flex-direction: column;
	min-height: 0;
	height: 100%;
}

.modifier-groups-scroll[b-54hhtemqi3] {
	flex: 1 1 auto;
	min-height: 0;
	overflow-y: auto;
	overflow-x: hidden;
	overscroll-behavior: contain;
}

.modifier-group[b-54hhtemqi3] {
	margin-bottom: var(--dialog-padding);
}

.modifier-group:last-child[b-54hhtemqi3] {
	margin-bottom: 0;
}

.modifier-running-total[b-54hhtemqi3] {
	flex-shrink: 0;
	margin: var(--dialog-padding) calc(var(--dialog-padding) * -1) 0;
}

.modifier-group-title[b-54hhtemqi3] {
	font-size: 14px;
	font-weight: var(--font-weight-regular);
	line-height: normal;
	color: #666;
	margin: 0 0 8px 0;
}

.modifier-group-title.required[b-54hhtemqi3] {
	color: #dc3545;
}

.modifier-options[b-54hhtemqi3] {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 8px;
}

.modifier-option[b-54hhtemqi3] {
	padding: 12px;
	border: 1px solid #ccc;
	background: #F2F2F2;
	border-radius: 8px;
	font-size: 14px;
	line-height: normal;
	font-weight: var(--font-weight-medium);
	color: #292E40;
	cursor: pointer;
	transition: all 0.2s;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	text-align: left;
}

.modifier-option > span:not(.modifier-option-price)[b-54hhtemqi3] {
	flex: 1;
	min-width: 0;
	text-align: left;
	text-wrap: balance;
}

.modifier-option:hover:not(:disabled)[b-54hhtemqi3] {
	border-color: var(--color-pos-accent);
}

.modifier-option.selected[b-54hhtemqi3] {
	background: var(--color-pos-accent);
	border-color: var(--color-pos-accent);
	color: white;
}

.modifier-option:disabled[b-54hhtemqi3] {
	cursor: not-allowed;
	color: #292E404D;
}

.modifier-option-price[b-54hhtemqi3] {
	flex-shrink: 0;
	font-size: 12px;
	color: #999;
	font-weight: var(--font-weight-regular);
	text-align: right;
	line-height: normal;
}

.modifier-option.selected .modifier-option-price[b-54hhtemqi3] {
	color: rgba(255, 255, 255, 0.75);
}
/* /Pages/Secure/Pos/Dialogs/RefundItemsDialog.razor.rz.scp.css */
.refund-items[b-5dfc534brk] {
	display: flex;
	flex-direction: column;
}

.refund-item[b-5dfc534brk] {
	display: flex;
	flex-direction: column;
	gap: 4px;
	padding-block: 16px;
}

.refund-item:not(:first-child)[b-5dfc534brk] {
	border-top: 1px dashed #b3b3b3;
}

.refund-item-primary[b-5dfc534brk] {
	display: flex;
	align-items: center;
	gap: 12px;
	min-width: 0;
}

.refund-item-details[b-5dfc534brk] {
	display: flex;
	flex-direction: column;
	gap: 4px;
	min-width: 0;
}

.refund-item-original-qty[b-5dfc534brk] {
	font-size: 11px;
	color: var(--color-pos-text-muted);
	line-height: normal;
}

.refund-reason[b-5dfc534brk] {
	display: flex;
	flex-direction: column;
	gap: 6px;
}

.refund-items-summary[b-5dfc534brk] {
	margin: var(--dialog-padding) calc(var(--dialog-padding) * -1) 0;
}

.cart-item-name[b-5dfc534brk] {
	font-size: 14px;
	font-weight: var(--font-weight-semibold);
	margin: 0;
	line-height: normal;
	flex: 1 1 auto;
	min-width: 0;
	color: var(--color-pos-text);
}

.cart-item-price[b-5dfc534brk] {
	font-size: 12px;
	line-height: normal;
	font-weight: var(--font-weight-regular);
	color: #222;
	display: flex;
	align-items: center;
	gap: 8px;
	flex-shrink: 0;
	text-align: right;
}

.cart-item-modifiers[b-5dfc534brk] {
	display: flex;
	gap: 8px;
	justify-content: space-between;
}

.cart-item-modifiers-group[b-5dfc534brk] {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 4px;
}

.modifier-tag[b-5dfc534brk] {
	font-size: 10px;
	line-height: 1.25;
	padding: 2px 8px;
	background: #fff;
	border: 1px solid var(--color-pos-border);
	border-radius: 999px;
	color: var(--color-pos-text);
}

.discount-tag[b-5dfc534brk] {
	background: #B9E7C2;
	border-color: #B9E7C2;
}

.cart-item-note[b-5dfc534brk] {
	font-size: 10px;
	line-height: normal;
	color: var(--color-pos-text-muted);
	font-style: italic;
}
/* /Pages/Secure/Pos/Dialogs/SelectRefundCardDialog.razor.rz.scp.css */
.refund-card-options[b-jmuh4eqs2q] {
	align-self: stretch;
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.refund-card-option-btn[b-jmuh4eqs2q] {
	display: flex;
	align-items: center;
	gap: 12px;
	border: 1px solid #ccc;
	border-radius: 8px;
	padding: 12px;
	background: white;
	text-align: left;
	transition: border-color 0.2s;
}

.refund-card-option-btn:hover[b-jmuh4eqs2q] {
	border-color: var(--color-surface-app);
}

.refund-card-option-icon[b-jmuh4eqs2q] {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}

.refund-card-option-info[b-jmuh4eqs2q] {
	display: flex;
	flex-direction: column;
	flex: 1;
	gap: 2px;
}

.refund-card-option-name[b-jmuh4eqs2q] {
	font-size: 14px;
	font-weight: var(--font-weight-bold);
	color: #222;
}

.refund-card-option-available[b-jmuh4eqs2q] {
	font-size: 12px;
	color: #666;
}
/* /Pages/Secure/Pos/Dialogs/SelectTenderTypeDialog.razor.rz.scp.css */
.tender-type-actions[b-kgfq03e3bi] {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.tender-options[b-kgfq03e3bi] {
	display: flex;
	gap: 12px;
}

.tender-option-btn[b-kgfq03e3bi] {
	flex: 1 1 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 8px;
	border: 1px solid var(--color-pos-border);
	border-radius: 8px;
	padding: 16px 12px;
	color: white;
	font-size: 14px;
	line-height: normal;
	font-weight: var(--font-weight-bold);
}

.tender-option-cash[b-kgfq03e3bi] {
	background: #7B9C81;
}

.tender-option-card[b-kgfq03e3bi] {
	background: var(--color-pos-accent);
}

.tender-split-btn[b-kgfq03e3bi] {
	width: 100%;
	background: var(--color-pos-surface-input);
	border: 1px solid var(--color-pos-border);
	border-radius: 8px;
	padding: 12px;
	font-size: 14px;
	line-height: normal;
	font-weight: var(--font-weight-medium);
	color: var(--color-pos-text);
}

.tender-type-summary[b-kgfq03e3bi] {
	margin: var(--dialog-padding) calc(var(--dialog-padding) * -1) 0;
}
/* /Pages/Secure/Pos/Dialogs/SplitPaymentDialog.razor.rz.scp.css */
.cash-amount-label[b-f0cjvi0eib] {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	font-size: 12px;
	line-height: 1.25;
	color: #666;
	margin-bottom: 8px;
}

.cash-amount-total[b-f0cjvi0eib] {
	color: #858894;
	font-weight: var(--font-weight-medium);
}

.split-amount-hint[b-f0cjvi0eib] {
	margin-bottom: 16px;
	padding-left: 16px;
	color: #999;
	font-size: 10px;
	font-weight: var(--font-weight-light);
	line-height: normal;
}

.cash-quick-actions[b-f0cjvi0eib] {
	display: flex;
	gap: 8px;
}

.cash-quick-btn[b-f0cjvi0eib] {
	flex: 1 1 0;
	border-radius: 8px;
	padding: 12px 8px;
	font-size: 12px;
	line-height: 1.25;
	font-weight: var(--font-weight-semibold);
	text-align: center;
}

.cash-quick-btn-exact[b-f0cjvi0eib] {
	background: #D6EFDF;
	border: 1px solid #9FD582;
	color: #598167;
}

.cash-quick-btn-roundup[b-f0cjvi0eib] {
	background: #E8EAFD;
	color: #4A44B1;
	border: 1px solid #C3C0EE;
}

.cash-denominations[b-f0cjvi0eib] {
	display: flex;
	gap: 8px;
}

.cash-denomination-btn[b-f0cjvi0eib] {
	flex: 1 1 0;
	background: #1F693A;
	color: white;
	border: none;
	border-radius: 8px;
	padding: 12px 0;
	font-size: 12px;
	line-height: 1.25;
	font-weight: var(--font-weight-semibold);
}

.cash-status[b-f0cjvi0eib] {
	display: flex;
	align-items: center;
	justify-content: space-between;
	border-radius: 8px;
	padding: 16px;
	font-size: 14px;
	color: var(--color-surface-app);
	.cash-status-amount {
		font-weight: var(--font-weight-bold);
	}
}

.cash-status-owing[b-f0cjvi0eib] {
	background: #FCE0E0;
	.cash-status-amount {
		color: #B32625;
	}
}

.split-method-options[b-f0cjvi0eib] {
	display: flex;
	gap: 8px;
	margin-bottom: var(--dialog-padding);
}

.split-method-btn[b-f0cjvi0eib] {
	flex: 1 1 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 8px;
	border: 1px solid #ccc;
	border-radius: 8px;
	padding: 16px 12px;
	color: white;
	font-size: 14px;
	line-height: 1.25;
	font-weight: var(--font-weight-bold);
}

.split-method-btn-cash[b-f0cjvi0eib] {
	background: #7B9C81;
}

.split-method-btn-card[b-f0cjvi0eib] {
	background: var(--color-pos-accent);
}

.split-method-future[b-f0cjvi0eib] {
	width: 100%;
	background: #F2F2F2;
	border: 1px solid #ccc;
	border-radius: 8px;
	padding: 12px;
	font-size: 14px;
	line-height: 1.25;
	font-weight: var(--font-weight-semibold);
	color: var(--color-surface-app);
	margin-bottom: 16px;
}

/* /Pages/Secure/Pos/Dialogs/TransactionDetailDialog.razor.rz.scp.css */
/* Wrapper keeps Fluent header/body/footer as grid children, and gives ::deep a scoped parent. */
.transaction-detail-dialog[b-vve1j8xr67] {
	display: contents;
}

/* Fluent uses: padding: 0 0 var(--dialog-padding) 0 on .fluent-dialog-header */
.transaction-detail-dialog[b-vve1j8xr67]  .fluent-dialog-header.no-padding {
	--dialog-padding: 0;
	padding: 0;
}

.transaction-detail-dialog[b-vve1j8xr67]  .fluent-dialog-body.veleo-modal-body {
	padding-top: 0;
}

.transaction-detail-subtitle[b-vve1j8xr67] {
	font-size: var(--font-size-small);
	font-style: italic;
	line-height: normal;
	font-weight: var(--font-weight-regular);
	color: #484848;
	margin: 0 0 var(--dialog-padding);
}

.transaction-detail-loading[b-vve1j8xr67],
.transaction-detail-not-found[b-vve1j8xr67] {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding-block: var(--dialog-padding);
	color: var(--color-pos-text-muted);
}

.transaction-summary[b-vve1j8xr67] {
	display: flex;
	flex-direction: column;
	gap: 16px;
	margin-bottom: var(--dialog-padding);
}

.transaction-summary-row[b-vve1j8xr67] {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
}

.transaction-summary-label[b-vve1j8xr67] {
	color: var(--color-pos-text);
	font-size: 14px;
	font-weight: var(--font-weight-regular);
	line-height: 14px;
}

.transaction-summary-value[b-vve1j8xr67] {
	color: var(--color-pos-text);
	text-align: right;
	font-size: 14px;
	font-weight: var(--font-weight-semibold);
	line-height: 14px;
}

.transaction-summary-value.transaction-detail-receipt[b-vve1j8xr67] {
	color: var(--color-pos-status-available);
}

.transaction-summary-row[b-vve1j8xr67]  .pill {
	font-size: 9px;
}

.dialog-summary.transaction-detail-items[b-vve1j8xr67] {
	max-height: min(320px, calc(100dvh - 28rem));
	overflow-y: auto;
	overflow-x: hidden;
	min-height: 0;
	overscroll-behavior: contain;
}

.transaction-detail-items .transaction-detail-item[b-vve1j8xr67] {
	padding-block: 16px;
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.transaction-detail-items .transaction-detail-item:not(:first-child)[b-vve1j8xr67] {
	border-top: 1px dashed #b3b3b3;
}

.cart-item-header[b-vve1j8xr67] {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 12px;
}

.cart-item-name[b-vve1j8xr67] {
	font-size: 14px;
	font-weight: var(--font-weight-semibold);
	margin: 0;
	line-height: normal;
	flex-grow: 1;
	color: var(--color-pos-text);
}

.cart-item-price-original[b-vve1j8xr67] {
	font-size: 12px;
	color: var(--color-pos-currency-muted);
	text-decoration: line-through;
	font-weight: var(--font-weight-regular);
}

.cart-item-price[b-vve1j8xr67] {
	font-size: 12px;
	font-weight: var(--font-weight-regular);
	color: #222;
	display: flex;
	align-items: center;
	gap: 8px;
	flex-shrink: 0;
	text-align: right;
	line-height: normal;
}

.cart-item-modifiers[b-vve1j8xr67] {
	display: flex;
	gap: 8px;
	justify-content: space-between;
}

.cart-item-modifiers-group[b-vve1j8xr67] {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 4px;
}

.modifier-tag[b-vve1j8xr67] {
	font-size: 10px;
	line-height: 1.25;
	padding: 2px 8px;
	background: #fff;
	border: 1px solid var(--color-pos-border);
	border-radius: 999px;
	color: var(--color-pos-text);
}

.discount-tag[b-vve1j8xr67] {
	background: #B9E7C2;
	border-color: #B9E7C2;
}

.cart-item-note[b-vve1j8xr67] {
	font-size: 10px;
	line-height: normal;
	color: var(--color-pos-text-muted);
	font-style: italic;
}

.transaction-detail-footer[b-vve1j8xr67] {
	flex-direction: column;
	align-items: stretch;
	gap: 16px;
}

.transaction-detail-footer-row[b-vve1j8xr67] {
	display: flex;
	gap: 4px;
}
/* /Pages/Secure/Pos/Pos.razor.rz.scp.css */
.pos-register-content[b-rmm0g65cda] {
	display: flex;
	flex-direction: column;
	min-height: 0;
	overflow: hidden;
	background: var(--color-neutral-0);
}

.pos-main-content[b-rmm0g65cda] {
	display: flex;
	flex-direction: column;
	min-height: 0;
	overflow: hidden;
	padding: 0;
}

.pos-container[b-rmm0g65cda] {
	display: grid;
	grid-template-columns: 1fr 23rem;
	flex: 1;
	min-height: 0;
	background: var(--color-surface-page);
	gap: 0;
}

.pos-initial-loading[b-rmm0g65cda] {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 1;
	min-height: 0;
}

/* Left Side: Products */
.pos-products[b-rmm0g65cda] {
	display: flex;
	flex-direction: column;
	overflow: hidden;
	padding: 10px;
	gap: 10px;
	min-width: 0;
	background: var(--color-surface-page);
}

.pos-products-body[b-rmm0g65cda] {
	display: flex;
	flex-direction: column;
	flex: 1;
	min-height: 0;
}

.product-list-scroll[b-rmm0g65cda] {
	flex: 1;
	min-height: 0;
	overflow-y: auto;
	padding-right: 10px;
	margin-right: -10px;
}

.pos-products-loading[b-rmm0g65cda] {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 1 1 auto;
}

.pos-toolbar[b-rmm0g65cda] {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 8px;
	border-radius: 8px;
	padding: 4px 6px;
	flex-shrink: 0;
}

.pos-toolbar-right[b-rmm0g65cda] {
	justify-self: end;
}

.pos-toolbar-left[b-rmm0g65cda], .pos-toolbar-right[b-rmm0g65cda] {
	display: flex;
	gap: 5px;
	align-items: center;
}

[b-rmm0g65cda] .pos-toolbar-left .enum-select {
	background: var(--color-pos-surface-muted);
}

[b-rmm0g65cda] .pos-shift-toolbar-icon--blocked {
	opacity: 0.5;
}

.search-bar[b-rmm0g65cda] {
	position: relative;
	height: 34px;
}

.search-icon[b-rmm0g65cda] {
	position: absolute;
	left: 10px;
	top: 50%;
	transform: translateY(-50%);
	pointer-events: none;
	display: flex;
	align-items: center;
}

.search-input[b-rmm0g65cda] {
	height: 100%;
	padding: 0 32px;
	border: 1px solid #ccc;
	border-radius: 8px;
	font-size: 12px;
	transition: all 0.2s;
}

.search-input[b-rmm0g65cda]::placeholder {
	color: #ccc;
}

.search-input:focus[b-rmm0g65cda] {
	outline: none;
	border-color: var(--color-pos-accent);
}

.clear-search[b-rmm0g65cda] {
	position: absolute;
	right: 10px;
	top: 50%;
	transform: translateY(-50%);
	background: #eee;
	border: none;
	border-radius: 50%;
	width: 24px;
	height: 24px;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	color: #6c757d;
	transition: all 0.2s;
}

.clear-search:hover[b-rmm0g65cda] {
	background: #ddd;
}

.category-tabs[b-rmm0g65cda] {
	display: flex;
	gap: 4px;
	overflow-x: auto;
	overflow-y: hidden;
	flex-shrink: 0;
	padding-bottom: 6px;
	margin-bottom: -6px;
}

.category-tabs-right[b-rmm0g65cda] {
	display: flex;
	gap: 4px;
	margin-left: auto;
	flex-shrink: 0;
}

.category-tabs[b-rmm0g65cda]::-webkit-scrollbar {
	height: 10px;
}

.category-tab[b-rmm0g65cda] {
	padding: 8px 16px;
	border: 1px solid #ccc;
	background: white;
	border-radius: 8px;
	font-size: 12px;
	color: #666;
	cursor: pointer;
	transition: all 0.2s;
	white-space: nowrap;
	line-height: 1.25;
}

.category-tab:hover[b-rmm0g65cda] {
	border-color: var(--color-surface-app);
	color: var(--color-surface-app);
}

.category-tab.active[b-rmm0g65cda] {
	background: var(--color-surface-app);
	border-color: var(--color-surface-app);
	color: white;
	font-weight: var(--font-weight-bold);
}

.category-tab[b-rmm0g65cda]::after {
	display: block;
	content: attr(data-text);
	content: attr(data-text) / "";
	font-weight: var(--font-weight-bold);
	height: 0;
	visibility: hidden;
	overflow: hidden;
	user-select: none;
	pointer-events: none;
}

.category-icon[b-rmm0g65cda] {
	font-size: 16px;
}

.product-grid[b-rmm0g65cda] {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
	gap: 4px;
	overflow-y: auto;
	padding-right: 10px;
	margin-right: -10px;
	flex: 1;
	min-height: 0;
	align-content: start;
}

.product-grid.pos-layout[b-rmm0g65cda] {
	--layout-columns: 2;
	--layout-rows: 2;
	grid-template-columns: repeat(var(--layout-columns), minmax(0, 1fr));
	grid-template-rows: repeat(var(--layout-rows), minmax(0, 1fr));
	flex-grow: 1;
	min-height: 0;
}

.product-grid.pos-layout .product-image[b-rmm0g65cda] {
	display: none;
	min-height: 0;
}

.category-tabs[b-rmm0g65cda]::-webkit-scrollbar {
	width: 10px;
}

.product-card[b-rmm0g65cda] {
	position: relative;
	background: white;
	border: 2px solid white;
	border-radius: 8px;
	padding: 3px;
	cursor: pointer;
	transition: all 0.2s;
	text-align: left;
	display: flex;
	flex-direction: column;
	gap: 4px;
	min-width: 0;
}

.product-grid:not(.pos-layout) .product-card[b-rmm0g65cda] {
	container-type: inline-size;
	container-name: pos-product;
	content-visibility: auto;
	contain-intrinsic-size: auto 220px;

	@container pos-product (max-width: 140px) {
		.product-name h3[b-rmm0g65cda] {
			font-size: 11px;
		}

		.product-image[b-rmm0g65cda] {
			aspect-ratio: 1;
		}
	}

	@container pos-product (min-width: 200px) {
		.product-image[b-rmm0g65cda] {
			aspect-ratio: 3 / 2;
		}
	}
}

.product-card-placeholder[b-rmm0g65cda] {
	--layout-x: span 1;
	--layout-y: span 1;
	grid-column: var(--layout-x);
	grid-row: var(--layout-y);
	border-radius: 8px;
	background: var(--color-pos-surface-muted);
	opacity: 0.5;
	height: 100%;
}

.product-grid.pos-layout .product-card[b-rmm0g65cda] {
	--layout-x: span 1;
	--layout-y: span 1;
	--border-left: 2px solid white;
	grid-column: var(--layout-x);
	grid-row: var(--layout-y);

	border-left: var(--border-left);
	justify-content: center;
	align-self: stretch;
	height: 100%;
	min-height: 0;
	container-type: size;
	container-name: pos-product;

	@container pos-product (max-height: 72px) {
		.product-name h3[b-rmm0g65cda] {
			font-size: 10px;
		}

		.product-price[b-rmm0g65cda] {
			font-size: 10px;
		}

		.product-expand-icon[b-rmm0g65cda] {
			height: 16px;
			width: 16px;
			top: 4px;
			right: 4px;
		}
	}

	@container pos-product (min-height: 73px) {
		.product-name h3[b-rmm0g65cda] {
			white-space: normal;
			display: -webkit-box;
			-webkit-box-orient: vertical;
			-webkit-line-clamp: 3;
			line-clamp: 3;
			overflow: hidden;
		}

		.product-info[b-rmm0g65cda] {
			justify-content: center;
		}
	}

	@container pos-product (min-height: 120px) {
		justify-content: flex-start;

		.product-name h3[b-rmm0g65cda] {
			font-size: 14px;
			-webkit-line-clamp: 2;
			line-clamp: 2;
		}

		.product-price[b-rmm0g65cda] {
			font-size: 14px;
		}

		/* The tile has a fixed height, so the image fills the space left over by the text rather than driving its own aspect ratio */
		.product-image[b-rmm0g65cda] {
			display: block;
			flex: 1 1 auto;
			aspect-ratio: auto;
			min-height: 0;
		}

		.product-image.product-image-placeholder[b-rmm0g65cda] {
			display: flex;
		}

		.product-info[b-rmm0g65cda] {
			flex: 0 0 auto;
			justify-content: flex-start;
		}
	}

	@container pos-product (min-height: 200px) {
		.product-name h3[b-rmm0g65cda] {
			-webkit-line-clamp: 3;
			line-clamp: 3;
		}
	}
}

/* Home tiles without a product image: keep name/price at the bottom at every tile size */
.product-grid.pos-layout .product-card:has(.product-image-placeholder)[b-rmm0g65cda] {
	justify-content: flex-start;
}

.product-grid.pos-layout .product-card:has(.product-image-placeholder) .product-image[b-rmm0g65cda] {
	display: none !important;
	flex: none;
	margin-bottom: 0;
}

.product-grid.pos-layout .product-card:has(.product-image-placeholder) .product-info[b-rmm0g65cda] {
	flex: 0 0 auto;
	margin-top: auto;
	justify-content: flex-start;
}

.product-grid.pos-layout .product-card:has(.product-image-placeholder) .product-name[b-rmm0g65cda] {
	flex-grow: 0;
	align-items: flex-end;
}

.product-card:hover[b-rmm0g65cda] {
	border-color: var(--color-pos-accent) !important;
}

[b-rmm0g65cda] .product-list {
	background: none;
	border: none;
	align-items: flex-start;
	row-gap: 4px;
}

[b-rmm0g65cda] tr.product-list-row {
	border-radius: 8px;
	cursor: pointer;
	transition: all 0.2s;
	font-size: 12px;
	font-weight: 600;
	line-height: normal;
}

[b-rmm0g65cda] tr.product-list-row td {
	background: white !important;
	border-top: 2px solid white;
	border-bottom: 2px solid white;
	font-size: 12px;
	font-weight: 600;
	line-height: normal;
}

[b-rmm0g65cda] tr.product-list-row:hover td {
	border-top-color: var(--color-pos-accent);
	border-bottom-color: var(--color-pos-accent);
}

[b-rmm0g65cda] tr.product-list-row:hover td:first-of-type {
	border-left-color: var(--color-pos-accent);
}

[b-rmm0g65cda] tr.product-list-row:hover td:last-of-type {
	border-right-color: var(--color-pos-accent);
}

[b-rmm0g65cda] tr.product-list-row td:first-of-type {
	border-top-left-radius: 8px;
	border-bottom-left-radius: 8px;
	border-left: 2px solid white;
}

[b-rmm0g65cda] tr.product-list-row td:last-of-type {
	border-top-right-radius: 8px;
	border-bottom-right-radius: 8px;
	border-right: 2px solid white;
}

.product-list-row:hover[b-rmm0g65cda] {
	border-color: var(--color-pos-accent);
}

.product-list-row__time[b-rmm0g65cda] {
	flex-shrink: 0;
	width: 70px;
	font-size: 12px;
	font-weight: var(--font-weight-bold);
	color: #333;
}

.product-image[b-rmm0g65cda] {
	width: 100%;
	flex-shrink: 0;
	aspect-ratio: 4 / 3;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	border-radius: 5px;
	background-color: var(--color-pos-surface-subtle);
	margin-bottom: 4px;
}

.product-image:not(.product-image-placeholder)[b-rmm0g65cda] {
	background-color: #fff;
}

.product-image-placeholder[b-rmm0g65cda] {
	display: flex;
	align-items: center;
	justify-content: center;
}

.product-info[b-rmm0g65cda] {
	display: flex;
	flex-direction: column;
	gap: 8px;
	flex-grow: 1;
}

.product-name[b-rmm0g65cda] {
	flex-grow: 1;
	display: flex;
	align-items: flex-end;
	h3 {
		font-size: 12px;
		color: var(--color-pos-text);
		margin: 0;
		line-height: 1.25;
		overflow: hidden;
		white-space: nowrap;
		text-overflow: ellipsis;
	}
}

.product-info-bottom[b-rmm0g65cda] {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}

.product-price[b-rmm0g65cda] {
	font-size: 12px;
	line-height: 1.25;
	font-weight: var(--font-weight-bold);
}

.product-plus-icon[b-rmm0g65cda] {
	background: var(--color-module-pos);
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 5px;
	width: 18px;
	height: 18px;
	flex-shrink: 0;
}

.product-qty[b-rmm0g65cda] {
	position: absolute;
	top: 3px;
	left: 3px;
	padding: 4px 8px;
	background: #B9E7C2;
	font-size: 10px;
	font-weight: var(--font-weight-semibold);
	line-height: 1.25;
	border-radius: 5px 0;
	display: flex;
	align-items: center;
	justify-content: center;
}

.product-qty.low-stock[b-rmm0g65cda] {
	background: #FFD1D1;
	color: #BA1212;
}

.product-expand-icon[b-rmm0g65cda] {
	position: absolute;
	top: 6px;
	right: 6px;
	background: white;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 5px;
	height: 20px;
	width: 20px;
}

/* Right Side: Cart */
.pos-cart[b-rmm0g65cda] {
	display: flex;
	flex-direction: column;
	background: var(--color-pos-surface-muted);
	height: 100%;
	min-width: 0;
	overflow: hidden;
	border-left: 1px solid var(--color-pos-border);
}

.cart-header[b-rmm0g65cda] {
	background: white;
	display: flex;
	align-items: stretch;
	min-width: 0;
}

.customer-select[b-rmm0g65cda] {
	padding: 8px;
	flex: 1 1 auto;
	min-width: 0;
	background: white;
	border: none;
	display: flex;
	align-items: center;
	justify-content: space-between;
	cursor: pointer;
	transition: all 0.2s;
	
	&:disabled {
		cursor: not-allowed;
	}
}

.customer-select-search-icon[b-rmm0g65cda] {
	--veleo-icon-color: #ccc;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
}

.customer-select:hover:not(:disabled)[b-rmm0g65cda] {
	background: #ebebeb;
	.customer-select-search-icon {
		--veleo-icon-color: #999;
	}
}

.customer-info[b-rmm0g65cda] {
	display: flex;
	align-items: center;
	gap: 10px;
	flex: 1;
	min-width: 0;
}

.customer-details[b-rmm0g65cda] {
	display: flex;
	flex-direction: column;
	text-align: left;
	line-height: 1.25;
	min-width: 0;
}

.customer-name[b-rmm0g65cda] {
	font-size: 12px;
	font-weight: var(--font-weight-bold);
}

.customer-membership[b-rmm0g65cda] {
	font-size: 11px;
	color: #7d7d7d;
}

.customer-avatar[b-rmm0g65cda] {
	width: 36px;
	height: 36px;
}

.customer-avatar-placeholder[b-rmm0g65cda] {
	height: 100%;
	border-radius: 4px;
	background: #D9D9D9;
	color: #8c8c8c;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 14px;
	font-weight: var(--font-weight-bold);
}

.customer-avatar-placeholder.unknown-customer[b-rmm0g65cda] {
	background: #ffaaaa;
	color: white;
}

.customer-clear-btn[b-rmm0g65cda] {
	color: #ccc;
	border: none;
	background: none;
	width: 36px;
	height: 36px;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: all 0.2s;
	&:disabled {
		cursor: not-allowed;
	}
}

.customer-clear-btn:hover:not(:disabled)[b-rmm0g65cda] {
	color: #9a9a9a;
}

.clear-cart-btn[b-rmm0g65cda],
.cart-discount-btn[b-rmm0g65cda] {
	border: none;
	flex: 0 0 55px;
	width: 55px;
	min-height: 55px;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: all 0.2s;
	
	&:disabled {
		cursor: not-allowed;
	}
}

.clear-cart-btn[b-rmm0g65cda] {
	background: #C4C4C4;
}

.clear-cart-btn:hover:not(:disabled)[b-rmm0g65cda] {
	background: #b0b0b0;
}

.cart-discount-btn[b-rmm0g65cda] {
	background: #E0E4E1;
}

.cart-discount-btn:hover:not(:disabled)[b-rmm0g65cda] {
	background: #C9CDCA;
}

.cart-shift-header[b-rmm0g65cda] {
	background: var(--color-module-pos);
	color: white;
	height: 28px;
	padding: 0 12px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	font-size: 12px;
	line-height: 1.25;
}

.cart-controls[b-rmm0g65cda] {
	display: flex;
	align-items: center;
	background: white;
	border-bottom: 1px solid #cfcfcf;
}

.cart-control-btn[b-rmm0g65cda] {
	background: none;
	color: var(--color-surface-app);
	border: none;
	height: 46px;
	width: 46px;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: all 0.2s;
}

.cart-control-btn:disabled[b-rmm0g65cda] {
	color: #aaa;
}

.cart-control-qty-btn[b-rmm0g65cda] {
	color: var(--color-surface-app);
}

.cart-control-clear-btn[b-rmm0g65cda] {
	color: var(--color-surface-app);
}

.cart-control-delete-btn[b-rmm0g65cda] {
	color: #BA1212;
}

.cart-container[b-rmm0g65cda] {
	display: flex;
	flex-direction: column;
	gap: 8px;
	flex: 1;
	min-height: 0;
}

.cart-business-day-warning[b-rmm0g65cda] {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 12px 12px;
	background: #FEF2F2;
	color: #991B1B;
	font-size: 13px;
	flex-shrink: 0;
	line-height: 1.25;
}

.cart-items[b-rmm0g65cda] {
	display: flex;
	flex-direction: column;
	overflow-y: auto;
	gap: 0;
	flex: 1;
	min-height: 0;
	scrollbar-width: none;
}

.cart-items[b-rmm0g65cda]::-webkit-scrollbar {
	display: none;
}

.cart-item[b-rmm0g65cda] {
	background: white;
	border: none;
	border-radius: 0;
	padding: 8px 16px 8px 8px;
	display: grid;
	grid-template-columns: 27px 1fr;
	gap: 2px 8px;
	align-items: center;
	text-align: left;
	width: 100%;
	box-shadow: inset 0 0 0 0 var(--color-pos-cart-selected-bar), inset 0 0 0 0 var(--color-pos-cart-selected-bar);
	transition: box-shadow 0.2s ease, background-color 0.2s ease;
}

.cart-item:nth-child(odd)[b-rmm0g65cda] {
	background: var(--color-neutral-150);
}

.cart-item:nth-child(even)[b-rmm0g65cda] {
	background: white;
}

.cart-item.active[b-rmm0g65cda] {
	box-shadow: inset 5px 0 0 0 var(--color-pos-cart-selected-bar), inset -5px 0 0 0 var(--color-pos-cart-selected-bar);
}

.cart-item.active:nth-child(even)[b-rmm0g65cda] {
	background: var(--color-pos-cart-selected-bg-even);
}

.cart-item.active:nth-child(odd)[b-rmm0g65cda] {
	background: var(--color-pos-cart-selected-bg-odd);
}

.cart-item.active .cart-item-quantity[b-rmm0g65cda] {
	color: var(--color-pos-cart-selected-quantity);
}

.cart-item-quantity[b-rmm0g65cda] {
	font-size: 14px;
	font-weight: var(--font-weight-semibold);
	line-height: normal;
	color: #7d7d7d;
	text-align: center;
	align-self: center;
}

.cart-item-info[b-rmm0g65cda] {
	display: flex;
	gap: 8px;
	align-items: center;
	min-width: 0;
}

.cart-item-name[b-rmm0g65cda] {
	font-size: 12px;
	font-weight: var(--font-weight-semibold);
	margin: 0;
	line-height: normal;
	flex-grow: 1;
	min-width: 0;
	color: var(--color-surface-app);
}

.cart-item-price-original[b-rmm0g65cda] {
	font-size: 11px;
	color: #ABABAB;
	text-decoration: line-through;
	font-weight: var(--font-weight-regular);
}

.cart-item-price-refund[b-rmm0g65cda],
.cart-item-price-negative[b-rmm0g65cda] {
	color: #BA1212 !important;
}

.cart-item-price[b-rmm0g65cda] {
	font-size: 14px;
	line-height: normal;
	font-weight: var(--font-weight-semibold);
	color: var(--color-module-pos);
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 8px;
	flex-shrink: 0;
	text-align: right;
}

.cart-item-modifiers[b-rmm0g65cda] {
	grid-column: 2;
	display: flex;
	gap: 8px;
	justify-content: space-between;
}

.cart-item-modifiers-group[b-rmm0g65cda] {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 4px;
}

.modifier-tag[b-rmm0g65cda] {
	font-size: 10px;
	line-height: 1.25;
	padding: 2px 6px;
	background: #fff;
	border: 1px solid var(--color-pos-border);
	border-radius: 5px;
	color: var(--color-pos-text);
}

.discount-tag[b-rmm0g65cda] {
	background: #B9E7C2;
	border-color: #B9E7C2;
}

[b-rmm0g65cda] tr.activity-list-row .activity-list-row__text {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

[b-rmm0g65cda] tr.activity-list-row .activity-list-row__type-pill .pill {
	text-transform: none;
	text-align: center;
	justify-content: center;
	font-size: 12px;
	font-weight: 600;
	line-height: normal;
	padding: 4px 10px;
	border-radius: 999px;
	white-space: nowrap;
}

[b-rmm0g65cda] .activity-list {
	row-gap: 4px;
}

[b-rmm0g65cda] tr.activity-list-row td {
	padding-top: 10px;
	padding-bottom: 10px;
}

.activity-list-row__attendance-col[b-rmm0g65cda] {
	width: 32px;
}

.activity-list-row__attendance[b-rmm0g65cda] {
	display: flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	width: 22px;
	height: 22px;
	line-height: 0;
}

.activity-list-row__attendance--recorded[b-rmm0g65cda] {
	color: #16A34B;
}

.activity-list-row__attendance-icon[b-rmm0g65cda] {
	display: block;
	width: 22px;
	height: 22px;
	flex-shrink: 0;
}

.activity-list-row__attendance--pending[b-rmm0g65cda] {
	border: 2px solid #D9D9D9;
	border-radius: 50%;
	background: #FFFFFF;
}

.activity-list-row__time-col[b-rmm0g65cda] {
	padding-right: 8px;
}

.activity-list-row__contact[b-rmm0g65cda] {
	display: flex;
	align-items: center;
	min-width: 0;
}

.activity-list-row__contact[b-rmm0g65cda]  .avatar-container {
	grid-template-columns: 38px 1fr;
	gap: 0 8px;
	min-width: 0;
}

.activity-list-row__contact[b-rmm0g65cda]  .avatar-container__image {
	width: 38px;
	height: 38px;
	background-color: #D9D9D9;
	color: #8C8C8C;
	font-size: 12px;
	font-weight: var(--font-weight-bold);
}

.activity-list-row__contact[b-rmm0g65cda]  .avatar-container__image img {
	width: 38px;
	height: 38px;
	object-fit: cover;
}

.activity-list-row__contact[b-rmm0g65cda]  .avatar-container__name {
	font-size: 12px;
	font-weight: 600;
	line-height: normal;
	color: #333;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.activity-status-icons[b-rmm0g65cda] {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	gap: 16px;
	min-height: 18px;
}

.activity-list-row__icon-slot[b-rmm0g65cda] {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 18px;
	height: 18px;
	flex-shrink: 0;
}

/* Iconoir bag glyph reads smaller than 18px setup/eye controls at the same font-size */
.activity-list-row__icon-slot[b-rmm0g65cda]  .veleo-icon {
	--veleo-icon-size: 22px;
}

.activity-status-icon-badge[b-rmm0g65cda] {
	display: block;
	width: 18px;
	height: 18px;
	flex-shrink: 0;
	line-height: 0;
}

.activity-status-icon-badge__chevron[b-rmm0g65cda] {
	display: block;
	width: 18px;
	height: 18px;
	flex-shrink: 0;
}

.activity-status-icon-badge--setup[b-rmm0g65cda] {
	color: #16A34B;
}

.activity-status-icon-badge--packdown[b-rmm0g65cda] {
	color: #BA1212;
}

.activity-list-row__price-col[b-rmm0g65cda] {
	text-align: right;
	padding-left: 12px;
}

.activity-list-row__action-col[b-rmm0g65cda] {
	width: 26px;
	padding-left: 8px;
}

.activity-list-row__open-btn[b-rmm0g65cda] {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 18px;
	height: 18px;
	padding: 0;
	border: none;
	border-radius: 4px;
	background: var(--color-surface-app);
	cursor: pointer;
	flex-shrink: 0;
}

.activity-list-row__open-btn-icon[b-rmm0g65cda] {
	display: block;
	flex-shrink: 0;
}

.activity-list-row__open-btn:hover[b-rmm0g65cda] {
	background: color-mix(in srgb, var(--color-surface-app) 80%, black);
}

.cart-item-note[b-rmm0g65cda] {
	grid-column: 2;
	font-size: 10px;
	line-height: 1.25;
	color: #666;
	font-style: italic;
}

.cart-footer[b-rmm0g65cda] {
	display: flex;
	flex-direction: column;
	flex: 0 0 auto;
	overflow: hidden;
	border-top: 1px solid var(--color-pos-border);
}

.cart-summary[b-rmm0g65cda] {
	padding: 12px;
	background: white;
	flex: 0 0 auto;
}

.summary-row[b-rmm0g65cda] {
	display: flex;
	justify-content: space-between;
	font-size: 12px;
	line-height: 1.25;
	margin-bottom: 4px;
}

.summary-row:last-child[b-rmm0g65cda] {
	margin-bottom: 0;
}

.discount-row[b-rmm0g65cda] {
	color: var(--color-pos-text);
	font-weight: var(--font-weight-semibold);
}

.payment-btn[b-rmm0g65cda] {
	display: flex;
	align-items: center;
	justify-content: space-between;
	min-height: 68px;
	padding: 16px;
	border: none;
	border-radius: 0;
	font-size: 15px;
	font-weight: var(--font-weight-bold);
	transition: background-color 0.2s;
	color: white;
	background: var(--color-button-primary);
	flex: 0 0 auto;
	cursor: pointer;
	-webkit-tap-highlight-color: transparent;
}

.payment-btn:disabled[b-rmm0g65cda] {
	opacity: 0.4;
	cursor: not-allowed;
}

.payment-btn:not(.payment-btn-refund):not(:disabled):hover[b-rmm0g65cda] {
	background: var(--color-button-primary-hover);
}

.payment-btn:not(.payment-btn-refund):not(:disabled):active[b-rmm0g65cda] {
	background: var(--color-button-primary-darker);
}

.payment-icon[b-rmm0g65cda] {
	font-size: 24px;
}

.payment-btn-card[b-rmm0g65cda] {
	background: #667eea;
	border-color: #667eea;
	color: white;
}

.payment-btn-cash[b-rmm0g65cda] {
	background: #28a745;
	border-color: #28a745;
	color: white;
}

.payment-btn-member[b-rmm0g65cda] {
	background: #ffc107;
	border-color: #ffc107;
	color: #212529;
}

.payment-btn-refund[b-rmm0g65cda] {
	background: #BA1212;
	border-color: #BA1212;
	color: white;
}

.payment-btn-refund:not(:disabled):hover[b-rmm0g65cda] {
	background: color-mix(in srgb, #BA1212 90%, transparent);
}

.payment-btn-refund:not(:disabled):active[b-rmm0g65cda] {
	background: color-mix(in srgb, #BA1212 70%, white);
}

.stock-warning-icon[b-rmm0g65cda] {
	font-size: 14px;
	flex-shrink: 0;
}

.mobile-cart-toggle-container[b-rmm0g65cda] {
	display: none;
	--accent-fill-rest: var(--color-button-primary);
	--neutral-fill-rest: #fff;
}

/* Mobile & tablet: keep filter and search on one row */
@media (max-width: 1024px) {
	.pos-toolbar[b-rmm0g65cda] {
		flex-wrap: nowrap;
	}

	.pos-toolbar-left[b-rmm0g65cda] {
		flex-shrink: 0;
	}

	.pos-toolbar-right[b-rmm0g65cda] {
		flex: 1 1 auto;
		min-width: 0;
		justify-content: flex-end;
	}

	.search-bar[b-rmm0g65cda] {
		flex: 1 1 auto;
		width: 100%;
		min-width: 0;
	}

	.search-input[b-rmm0g65cda] {
		width: 100%;
		min-width: 0;
		box-sizing: border-box;
	}
}

/* Tablet: reclaim vertical space */
@media (min-width: 800px) and (max-width: 1024px) {
	.pos-products[b-rmm0g65cda] {
		padding: 8px;
		gap: 6px;
	}

	.pos-toolbar[b-rmm0g65cda] {
		padding: 3px 5px;
		gap: 6px;
	}

	.category-tabs[b-rmm0g65cda] {
		padding-bottom: 4px;
		margin-bottom: -4px;
	}

	.cart-container[b-rmm0g65cda] {
		padding: 8px;
		gap: 6px;
	}

	.cart-control-btn[b-rmm0g65cda] {
		height: 42px;
		width: 42px;
	}
}

/* Mobile Responsive */
@media (max-width: 799px) {
	.pos-container[b-rmm0g65cda] {
		grid-template-columns: 1fr;
		position: relative;
	}

	.pos-cart:not(.show)[b-rmm0g65cda] {
		display: none;
	}
	
	.pos-products:not(.show)[b-rmm0g65cda] {
		display: none;
	}

	.product-grid[b-rmm0g65cda] {
		grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
	}
	
	.mobile-cart-toggle-container[b-rmm0g65cda] {
		display: block;
	}

	.mobile-cart-toggle[b-rmm0g65cda] {
		background: none;
		border: none;
		display: flex;
		align-items: center;
		justify-content: center;
		height: 32px;
		width: 32px;
	}
	.mobile-cart-toggle:hover[b-rmm0g65cda] {
		--veleo-icon-color: white;
	}

	[b-rmm0g65cda] .pos-toolbar-left .enum-select {
		--veleo-icon-size: 22px;
	}
}
/* /Pages/Secure/Pos/ShiftManagement.razor.rz.scp.css */
.business-day-too-long-banner[b-a6l72eewsy] {
	display: flex;
	align-items: center;
	gap: 8px;
	margin: 16px 24px;
	padding: 12px 12px;
	border-radius: 8px;
	background: #FEF2F2;
	color: #991B1B;
	font-size: 13px;
	flex-shrink: 0;
	line-height: 1.25;
	border: 1px solid #FEE2E2;
}

.shift-management-loading[b-a6l72eewsy] {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	height: 100%;
}

.shift-management-empty-wrap[b-a6l72eewsy] {
	display: flex;
	flex-direction: column;
	flex: 1;
	min-height: 0;
	overflow: hidden;
	padding: 76px;
	background: var(--color-surface-page);
}

.register-selector-empty-state[b-a6l72eewsy] {
	display: flex;
	flex: 1;
	min-height: 0;
	align-items: center;
	justify-content: center;
	background: var(--color-pos-surface-muted);
	border-radius: 12px;
}

.register-selector-empty-content[b-a6l72eewsy] {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 32px;
	text-align: center;
}

.register-selector-empty-message[b-a6l72eewsy] {
	margin: 0;
	font-size: var(--font-size-xlarge);
	font-weight: var(--font-weight-semibold);
	line-height: normal;
	text-align: center;
	color: var(--color-pos-text-secondary);
}

.panel-title[b-a6l72eewsy] {
	font-size: 24px;
	font-weight: 600;
	color: var(--color-surface-app);
	margin: 0;
}

/* Left panel: transaction history */

.transactions-panel[b-a6l72eewsy] {
	display: flex;
	flex-direction: column;
	gap: 12px;
	height: 100%;
	min-height: 0;
}

.transactions-panel .panel-title[b-a6l72eewsy],
.transactions-panel .category-tabs[b-a6l72eewsy],
.transactions-panel .search-bar[b-a6l72eewsy] {
	flex-shrink: 0;
}

/* MobileTabPanel's left panel scrolls by default - override that so only the
   transaction list below scrolls and the title/filters stay fixed in place. */
[b-a6l72eewsy] .tab-content-left {
	overflow: hidden;
}

.category-tabs[b-a6l72eewsy] {
	display: flex;
	gap: 4px;
	overflow-x: auto;
	overflow-y: hidden;
	flex-shrink: 0;
	padding-bottom: 10px;
	margin-bottom: -10px;
}

.category-tabs[b-a6l72eewsy]::-webkit-scrollbar {
	height: 10px;
}

.category-tab[b-a6l72eewsy] {
	padding: 8px 16px;
	border: 1px solid #ccc;
	background: white;
	border-radius: 8px;
	font-size: 12px;
	color: #666;
	cursor: pointer;
	transition: all 0.2s;
	white-space: nowrap;
	line-height: 1.25;
}

.category-tab:hover[b-a6l72eewsy] {
	border-color: var(--color-surface-app);
	color: var(--color-surface-app);
}

.category-tab.active[b-a6l72eewsy] {
	background: var(--color-surface-app);
	border-color: var(--color-surface-app);
	color: white;
	font-weight: var(--font-weight-bold);
}

.category-tab[b-a6l72eewsy]::after {
	display: block;
	content: attr(data-text);
	content: attr(data-text) / "";
	font-weight: var(--font-weight-bold);
	height: 0;
	visibility: hidden;
	overflow: hidden;
	user-select: none;
	pointer-events: none;
}

.search-bar[b-a6l72eewsy] {
	position: relative;
	height: 37px;
}

.search-icon[b-a6l72eewsy] {
	position: absolute;
	left: 10px;
	top: 50%;
	transform: translateY(-50%);
	pointer-events: none;
}

.search-input[b-a6l72eewsy] {
	width: 100%;
	height: 100%;
	padding: 0 32px;
	border: 1px solid #ccc;
	border-radius: 8px;
	font-size: 12px;
	transition: all 0.2s;
}

.search-input[b-a6l72eewsy]::placeholder {
	color: #ccc;
}

.search-input:focus[b-a6l72eewsy] {
	outline: none;
	border-color: var(--color-pos-accent);
}

.clear-search[b-a6l72eewsy] {
	position: absolute;
	right: 10px;
	top: 50%;
	transform: translateY(-50%);
	background: #eee;
	border: none;
	border-radius: 50%;
	width: 20px;
	height: 20px;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
}

.transaction-list-container[b-a6l72eewsy] {
	flex: 1;
	min-height: 0;
	overflow-y: auto;
}

.transaction-list-container--empty[b-a6l72eewsy] {
	display: flex;
	flex-direction: column;
}

.transaction-list-container--empty[b-a6l72eewsy]  .module-empty-state {
	flex: 1;
	min-height: 0;
}

[b-a6l72eewsy] .transaction-list {
	width: 100%;
	align-items: flex-start;
}

[b-a6l72eewsy] tr.transaction-list-row {
	font-size: 12px;
	cursor: pointer;
}

[b-a6l72eewsy] tr.transaction-list-row > td {
	align-content: flex-start;
}

.transaction-list-row__time[b-a6l72eewsy],
.transaction-list-row__price[b-a6l72eewsy],
.transaction-list-row__price--negative[b-a6l72eewsy] {
	color: #292E40;
	font-size: 14px;
	font-weight: var(--font-weight-medium);
	line-height: normal;
}

.transaction-list-row__type-icon[b-a6l72eewsy] {
	width: 28px;
	height: 28px;
	border-radius: 8px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.transaction-list-row__details[b-a6l72eewsy] {
	display: flex;
	flex-direction: column;
	overflow: hidden;
}

.transaction-list-row__contact[b-a6l72eewsy] {
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	color: #484848;
	font-size: 14px;
	font-weight: var(--font-weight-regular);
	line-height: normal;
}

.transaction-list-row__identifier[b-a6l72eewsy],
.transaction-list-row__items[b-a6l72eewsy] {
	color: #484848;
	font-size: 12px;
	font-style: italic;
	font-weight: var(--font-weight-regular);
	line-height: normal;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.transaction-list-row__amount[b-a6l72eewsy] {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	text-align: right;
}

.transaction-list-row__price--negative[b-a6l72eewsy] {
	color: #BA1212;
}

/* Right panel: shift info, KPIs, register actions, discount summary */

.shift-panel[b-a6l72eewsy] {
	display: flex;
	flex-direction: column;
	gap: 20px;
	padding: 25px;
}

.shift-info-row[b-a6l72eewsy] {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 16px;
}

.shift-info-column[b-a6l72eewsy] {
	display: flex;
	flex-direction: column;
	gap: 10px;
	flex: 1;
}

.shift-info-list[b-a6l72eewsy] {
	display: grid;
	grid-template-columns: max-content 1fr;
	column-gap: 24px;
	row-gap: 4px;
	align-items: baseline;
}

.shift-info-item[b-a6l72eewsy] {
	display: contents;
	font-size: 13px;
}

.shift-info-label[b-a6l72eewsy] {
	color: #000;
	font-size: 14px;
	font-weight: var(--font-weight-medium);
	line-height: normal;
}

.shift-info-value[b-a6l72eewsy] {
	font-weight: var(--font-weight-regular);
}

.close-shift-btn[b-a6l72eewsy] {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 10px 20px;
	border: none;
	border-radius: 8px;
	background: var(--color-surface-app);
	color: white;
	font-size: 13px;
	font-weight: var(--font-weight-bold);
	white-space: nowrap;
	cursor: pointer;
	transition: opacity 0.2s;
}

.close-shift-btn:hover[b-a6l72eewsy] {
	opacity: 0.85;
}

.register-actions-grid[b-a6l72eewsy] {
	display: grid;
	grid-template-columns: repeat(auto-fit, 120px);
	gap: 8px;
	margin-top: 8px;
}

.register-action-btn[b-a6l72eewsy] {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 8px;
	padding: 16px 8px 8px;
	border: 1px solid #e3e6f0;
	border-radius: 8px;
	background: white;
	font-size: 11px;
	font-weight: var(--font-weight-bold);
	color: #333;
	text-transform: uppercase;
	cursor: pointer;
	transition: border-color 0.2s;
}

.register-action-btn:hover[b-a6l72eewsy] {
	border-color: var(--color-surface-app);
}

.register-action-btn:disabled[b-a6l72eewsy] {
	opacity: 0.5;
	cursor: not-allowed;
}

.register-action-btn:disabled:hover[b-a6l72eewsy] {
	border-color: #e3e6f0;
}
/* /Pages/Secure/Profile/FirstLogin.razor.rz.scp.css */
/* /Pages/Secure/Profile/Profile.razor.rz.scp.css */
/*
	Mirrors the ContactProfile aside column so the two profile pages read as one design. The shared
	look comes from .global__contact-aside-column-styling in _contacts.scss; what is here is the
	profile module's own colour, the initials fallback, and the bits ContactProfile does not need.
*/
.profile-page[b-lpp86v0mrb] {
	max-width: 720px;
}

.profile-page h1[b-lpp86v0mrb] {
	color: var(--color-module-profile);
}

.profile-page h2[b-lpp86v0mrb] {
	color: #666;
	font-weight: normal;
}

.contact-profile[b-lpp86v0mrb] {
	display: grid;
	grid-template-columns: 200px auto;
	align-items: center;

	.profile-picture {
		display: flex;
		flex-direction: column;
		align-items: center;

		.profile-image {
			position: relative;
			display: flex;
			justify-content: center;
			align-items: center;
			width: 175px;
			height: 175px;
			background-color: #dde8f8;
			cursor: pointer;
			transition: opacity ease-in-out 0.2s;

			& img {
				object-fit: cover;
				width: 175px;
				height: 175px;
			}

			/* No gender is held for a user, so initials stand in for the contact placeholder graphics */
			.initials[b-lpp86v0mrb] {
				font-size: 60px;
				font-weight: bold;
				color: #fff;
				user-select: none;
			}

			.spinner-icon[b-lpp86v0mrb] {
				position: absolute;
				top: 0;
				left: 0;
				right: 0;
				bottom: 0;
				background-color: #00000088;

				display: flex;
				align-items: center;
				justify-content: center;
			}

			.camera-icon[b-lpp86v0mrb] {
				font-size: 50px;
				color: #FFF;
				position: absolute;
				top: 50%;
				left: 50%;
				transform: translate(-50%, -50%);
				opacity: 0;
				transition: opacity ease-in-out 0.2s;
			}

			&:hover[b-lpp86v0mrb] {
				opacity: 0.8;

				.camera-icon {
					opacity: 0.5;
				}
			}
		}

		/* Initials sit on the avatar colour used everywhere else, not the photo placeholder blue */
		.profile-image:not(:has(img))[b-lpp86v0mrb] {
			background-color: #ABC;
		}
	}

	.profile-details[b-lpp86v0mrb] {
		height: 100%;
		display: flex;
		flex-direction: column;
		justify-content: center;
	}
}

.section-heading-with-action[b-lpp86v0mrb] {
	display: grid;
	grid-template-columns: auto 50px;
	align-items: center;
}

.roles-list[b-lpp86v0mrb] {
	display: grid;
	gap: 8px;
	margin-top: 8px;
}

.role[b-lpp86v0mrb] {
	display: grid;
	grid-template-columns: 180px auto;
	gap: 20px;
	align-items: center;
}

.role-name[b-lpp86v0mrb] {
	justify-self: start;
}

.role-description[b-lpp86v0mrb] {
	color: #555;
	font-size: 10pt;
}

.read-only-note[b-lpp86v0mrb] {
	margin: 10px 0 0 0;
	font-size: 9pt;
	color: #999;
}

.no-roles[b-lpp86v0mrb],
.not-set[b-lpp86v0mrb] {
	color: #ccc;
	font-style: italic;
}

.no-roles[b-lpp86v0mrb] {
	margin: 8px 0 0 0;
}

.pin-mask[b-lpp86v0mrb] {
	letter-spacing: 4px;
	color: #555;
}
/* /Pages/Secure/Sales/MyDay.razor.rz.scp.css */
.my-day-page[b-hpyss858l3] {
    padding: 16px 24px;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.my-day-table-container[b-hpyss858l3] {
    border-radius: 8px;
    overflow: hidden;
}

.contact-link[b-hpyss858l3] {
    color: var(--accent-foreground-rest);
    text-decoration: none;
    font-weight: 500;
}

.contact-link:hover[b-hpyss858l3] {
    text-decoration: underline;
}

.temperature-pill[b-hpyss858l3] {
    display: inline-block;
    padding: 2px 8px;
    border-radius: 12px;
    font-size: 12px;
    font-weight: 500;
    background: var(--neutral-fill-secondary-rest);
    color: var(--neutral-foreground-rest);
}

.overdue-date[b-hpyss858l3] {
    color: var(--error-foreground);
    font-weight: 500;
}

.overdue-badge[b-hpyss858l3] {
    display: inline-block;
    margin-left: 6px;
    padding: 1px 6px;
    border-radius: 10px;
    font-size: 11px;
    background: var(--error-foreground);
    color: white;
}

.log-interaction-btn[b-hpyss858l3] {
    display: flex;
    align-items: center;
    gap: 4px;
    padding: 4px 10px;
    border: 1px solid var(--accent-stroke-control-rest);
    border-radius: 4px;
    background: transparent;
    color: var(--accent-foreground-rest);
    font-size: 13px;
    cursor: pointer;
    white-space: nowrap;
}

.log-interaction-btn:hover[b-hpyss858l3] {
    background: var(--accent-fill-secondary-rest);
}

.empty-state[b-hpyss858l3] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 12px;
    padding: 60px 0;
    color: var(--neutral-foreground-hint);
}

.empty-state .iconoir[b-hpyss858l3] {
    font-size: 40px;
}

.empty-state p[b-hpyss858l3] {
    font-size: 16px;
}
/* /Pages/Secure/Settings/Brands/BrandMessageTemplates/BrandMessageTemplates.razor.rz.scp.css */
/* /Pages/Secure/Settings/Brands/EmailAssets/BrandEmailAssets.razor.rz.scp.css */
/* /Pages/Secure/Settings/Courses/RatingSystems/CreateSkillRatingSystem.razor.rz.scp.css */
.rating-grid[b-htsmvb0aty]{
	display: grid;
	grid-template-columns: 1fr;
	gap: 10px;
	border: 1px solid var(--color-form-component-border);
	background-color: var(--color-form-component-background);
	border-radius: var(--style-form-component-border-radius);
	padding: 10px 0;
}

.rating-grid-row[b-htsmvb0aty]{
	display: grid;
	grid-template-columns: 50px 150px 75px 1fr 130px 90px;
	gap: 10px;
	padding-left: 20px;
	padding-right: 20px;
	
	.label{
		color: #999;
		font-size: 10pt;
		padding-left: 5px;
	}
}

.buttons[b-htsmvb0aty]{
	display: grid;
	 grid-template-columns: 1fr 1fr;
	 gap: 10px;
}

.pass-value[b-htsmvb0aty]{
	
	background: linear-gradient(180deg,rgba(93, 155, 42, 0.2) 0%, rgba(255, 255, 255, 1) 100%);
	padding-top: 10px;
	position: relative;
	
	&::before{
		position: absolute;
		top: 11px;
		content: "PASS";
		font-weight: bold;
		color: #5D9B2A;
		font-size: 9pt;
		writing-mode: vertical-rl;
		rotate: 180deg;
	}
}

.rating[b-htsmvb0aty]{
	display: grid;
	align-items: center;
	justify-content: center;
	background-color: var(--neutral-fill-secondary-rest);
	font-weight: 800;
	border-radius: calc(var(--control-corner-radius) * 1px);
}
/* /Pages/Secure/Settings/Courses/RatingSystems/EditSkillRatingSystem.razor.rz.scp.css */
.rating-grid[b-ixc019uusx]{
	display: grid;
	grid-template-columns: 1fr;
	gap: 10px;
	border: 1px solid var(--color-form-component-border);
	background-color: var(--color-form-component-background);
	border-radius: var(--style-form-component-border-radius);
	padding: 10px 0;
}

.rating-grid-row[b-ixc019uusx]{
	display: grid;
	grid-template-columns: 50px 150px 75px 1fr 130px 90px;
	gap: 10px;
	padding-left: 20px;
	padding-right: 20px;

	.label{
		color: #999;
		font-size: 10pt;
		padding-left: 5px;
	}
}

.buttons[b-ixc019uusx]{
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 10px;
}

.pass-value[b-ixc019uusx]{

	background: linear-gradient(180deg,rgba(93, 155, 42, 0.2) 0%, rgba(255, 255, 255, 1) 100%);
	padding-top: 10px;
	position: relative;

	&::before{
		position: absolute;
		top: 11px;
		content: "PASS";
		font-weight: bold;
		color: #5D9B2A;
		font-size: 9pt;
		writing-mode: vertical-rl;
		rotate: 180deg;
	}
}

.rating[b-ixc019uusx]{
	display: grid;
	align-items: center;
	justify-content: center;
	background-color: var(--neutral-fill-secondary-rest);
	font-weight: 800;
	border-radius: calc(var(--control-corner-radius) * 1px);
}
/* /Pages/Secure/Settings/DataCollection/FormDefinitions/CreateFormDefinition.razor.rz.scp.css */
.fd-sections-container[b-ml1cx8n4z0] {
    display: flex;
    flex-direction: column;
    grid-column: 1 / -1;
    width: 100%;
}

.fd-add-section[b-ml1cx8n4z0] {
    margin-top: 4px;
	align-items: center;
	display: flex;
	justify-content: center;
}

.fd-error-banner[b-ml1cx8n4z0] {
    background: #fef2f2;
    border: 1px solid #fca5a5;
    border-radius: 8px;
    color: #dc2626;
    padding: 10px 14px;
    margin-bottom: 16px;
    font-size: 14px;
    grid-column: 1 / -1;
}
/* /Pages/Secure/Settings/DataCollection/FormDefinitions/EditFormDefinition.razor.rz.scp.css */
.fd-sections-container[b-pk9s6nkius] {
    display: flex;
    flex-direction: column;
    grid-column: 1 / -1;
    width: 100%;
	margin-bottom: 20px;
}

.fd-add-section[b-pk9s6nkius] {
    margin-top: 4px;
	align-items: center;
	display: flex;
	justify-content: center;
}

.fd-error-banner[b-pk9s6nkius] {
    background: #fef2f2;
    border: 1px solid #fca5a5;
    border-radius: 8px;
    color: #dc2626;
    padding: 10px 14px;
    margin-bottom: 16px;
    font-size: 14px;
    grid-column: 1 / -1;
}
/* /Pages/Secure/Settings/DataCollection/FormDefinitions/FormDefinitions.razor.rz.scp.css */
/* FormDefinitions page — styles for the catalogue UI live in FormCatalogueDialog.razor.css */
/* /Pages/Secure/Settings/Finance/PaymentProviders.razor.rz.scp.css */
.key-replaced[b-57jm9u4yy2] {
	font-size: 0.85em;
	opacity: 0.7;
}
/* /Pages/Secure/Settings/Products/CreateProduct.razor.rz.scp.css */
.modifier-groups-container[b-zfhhhenf86] {
	display: flex;
	flex-direction: column;
	grid-column: 1 / -1;

	gap: 12px;
}

.modifier-group-row[b-zfhhhenf86] {
	display: grid;
	grid-template-columns: auto 1fr auto;
	align-items: center;
	gap: 10px;
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 8px;
	padding: 8px 10px 8px 8px;
	min-height: 48px;
	transition: border-color 0.15s, box-shadow 0.15s;
}

.modifier-group-add[b-zfhhhenf86] {
	margin-top: 4px;
	align-items: center;
	display: flex;
	justify-content: center;
}

.product-variants-container[b-zfhhhenf86] {
    display: flex;
    flex-direction: column;
    grid-column: 1 / -1;
    width: 100%;
    gap: 12px;
}

.product-variant-card[b-zfhhhenf86] {
    border: 1px solid #e2e8f0;
    border-radius: 10px;
    background: #fff;
    overflow: hidden;
}

.product-variant-card__header[b-zfhhhenf86] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px 14px;
    background: #f8fafc;
    border-bottom: 1px solid #e2e8f0;
    font-size: 13px;
    font-weight: 600;
    color: #374151;
}

.product-variant-card__fields[b-zfhhhenf86] {
    padding: 14px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.product-variant-card__field[b-zfhhhenf86] {
    display: grid;
    gap: 20px;
    grid-template-columns: 130px 1fr;
}

.product-variant-card__label[b-zfhhhenf86] {
    color: #6b7280;
    text-align: right;
    padding-top: 7px;
    font-weight: var(--font-weight-medium);
}

.product-variant-add[b-zfhhhenf86] {
    margin-top: 4px;
    align-items: center;
    display: flex;
    justify-content: center;
}

.product-variant-card__codes-row[b-zfhhhenf86] {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 10px;
    margin-left: calc(130px + 20px);
}

.product-variant-card__codes-row .product-variant-card__field[b-zfhhhenf86] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.product-variant-card__codes-row .product-variant-card__label[b-zfhhhenf86] {
    text-align: left;
    padding-top: 0;
}

@media (max-width: 640px) {
    .product-variant-card__codes-row[b-zfhhhenf86] {
        grid-template-columns: 1fr;
        margin-left: 0;
    }

    .product-variant-card__codes-row .product-variant-card__field[b-zfhhhenf86] {
        display: grid;
        grid-template-columns: 130px 1fr;
        gap: 20px;
    }

    .product-variant-card__codes-row .product-variant-card__label[b-zfhhhenf86] {
        text-align: right;
        padding-top: 7px;
    }
}
/* /Pages/Secure/Settings/Products/CreateProductPricing.razor.rz.scp.css */
table[b-tidi9sf647] {
	grid-column: 1 / span 2;
	width: 100%;
	display: grid;
	border-top: 1px solid #333;
	border-left: 1px solid #333;
	
	thead, tbody, tr {
		display: contents;
	}
	
	th[b-tidi9sf647], td[b-tidi9sf647] {
		display: flex;
		justify-content: center;
		align-items: center;
	}
	
	th[b-tidi9sf647] {
		padding: 0.25rem 0.5rem;
		text-align: center;
		background-color: #D0D0D0;
		border-bottom: 1px solid #333;
		border-right: 1px solid #333;
		
		&.selectable:hover {
			cursor: pointer;
			background-color: #BBBBBB;
		}
	}

	thead:first-of-type th[b-tidi9sf647] {
		background-color: #ADADAD;
	}

	td[b-tidi9sf647] {
		text-align: center;
		padding: 0;
		position: relative;
		border-bottom: 1px solid #999;
		border-right: 1px solid #999;
		
		&.selected::after {
			content: '';
			display: block;
			position: absolute;
			top: -1px;
			left: -1px;
			width: 100%;
			height: 100%;
			border: 1px solid #FF0000;
			pointer-events: none;
			background-color: #FF000011;
		}
	}
}

.bulk-adjustment-panel[b-tidi9sf647] {
	background-color: #eee; 
	padding: 10px; 
	border-radius: 5px; 
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 0.5rem;
}
/* /Pages/Secure/Settings/Products/EditProduct.razor.rz.scp.css */
.modifier-groups-container[b-9u1y5f95nk] {
	display: flex;
	flex-direction: column;
	grid-column: 1 / -1;

	gap: 12px;
}

.modifier-group-row[b-9u1y5f95nk] {
	display: grid;
	grid-template-columns: auto 1fr auto;
	align-items: center;
	gap: 10px;
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 8px;
	padding: 8px 10px 8px 8px;
	min-height: 48px;
	transition: border-color 0.15s, box-shadow 0.15s;
}

.modifier-group-add[b-9u1y5f95nk] {
	margin-top: 4px;
	align-items: center;
	display: flex;
	justify-content: center;
}

.product-variants-container[b-9u1y5f95nk] {
    display: flex;
    flex-direction: column;
    grid-column: 1 / -1;
    width: 100%;
    gap: 12px;
}

.product-variant-card[b-9u1y5f95nk] {
    border: 1px solid #e2e8f0;
    border-radius: 10px;
    background: #fff;
    overflow: hidden;
}

.product-variant-card__header[b-9u1y5f95nk] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px 14px;
    background: #f8fafc;
    border-bottom: 1px solid #e2e8f0;
    font-size: 13px;
    font-weight: 600;
    color: #374151;
}

.product-variant-card__fields[b-9u1y5f95nk] {
    padding: 14px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.product-variant-card__field[b-9u1y5f95nk] {
    display: grid;
    gap: 20px;
    grid-template-columns: 130px 1fr;
}

.product-variant-card__label[b-9u1y5f95nk] {
    color: #6b7280;
    text-align: right;
    padding-top: 7px;
    font-weight: var(--font-weight-medium);
}

.product-variant-add[b-9u1y5f95nk] {
    margin-top: 4px;
    align-items: center;
    display: flex;
    justify-content: center;
}

.product-variant-card__codes-row[b-9u1y5f95nk] {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 10px;
    margin-left: calc(130px + 20px);
}

.product-variant-card__codes-row .product-variant-card__field[b-9u1y5f95nk] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.product-variant-card__codes-row .product-variant-card__label[b-9u1y5f95nk] {
    text-align: left;
    padding-top: 0;
}

@media (max-width: 640px) {
    .product-variant-card__codes-row[b-9u1y5f95nk] {
        grid-template-columns: 1fr;
        margin-left: 0;
    }

    .product-variant-card__codes-row .product-variant-card__field[b-9u1y5f95nk] {
        display: grid;
        grid-template-columns: 130px 1fr;
        gap: 20px;
    }

    .product-variant-card__codes-row .product-variant-card__label[b-9u1y5f95nk] {
        text-align: right;
        padding-top: 7px;
    }
}
/* /Pages/Secure/Settings/Products/EditProductPricing.razor.rz.scp.css */
table[b-848elxqsku] {
	grid-column: 1 / span 2;
	width: 100%;
	display: grid;
	border-top: 1px solid #333;
	border-left: 1px solid #333;

	thead, tbody, tr {
		display: contents;
	}

	th[b-848elxqsku], td[b-848elxqsku] {
		display: flex;
		justify-content: center;
		align-items: center;
	}

	th[b-848elxqsku] {
		padding: 0.25rem 0.5rem;
		text-align: center;
		background-color: #D0D0D0;
		border-bottom: 1px solid #333;
		border-right: 1px solid #333;

		&.selectable:hover {
			cursor: pointer;
			background-color: #BBBBBB;
		}
	}

	thead:first-of-type th[b-848elxqsku] {
		background-color: #ADADAD;
	}

	td[b-848elxqsku] {
		text-align: center;
		padding: 0;
		position: relative;
		border-bottom: 1px solid #999;
		border-right: 1px solid #999;

		&.selected::after {
			content: '';
			display: block;
			position: absolute;
			top: -1px;
			left: -1px;
			width: 100%;
			height: 100%;
			border: 1px solid #FF0000;
			pointer-events: none;
			background-color: #FF000011;
		}
	}
}

.bulk-adjustment-panel[b-848elxqsku] {
	background-color: #eee;
	padding: 10px;
	border-radius: 5px;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 0.5rem;
}
/* /Pages/Secure/Settings/Products/ImportProducts.razor.rz.scp.css */
/*
 * Products › Import and export.
 *
 * Built from existing tokens only: greys from the neutral ramp, semantic tones (danger, warning,
 * positive) from the record tokens, the brand green for accents, and the type scale for every size.
 * Type sizes and weights come from the .text-* role classes in the markup; this file sets colour,
 * layout and spacing.
 */

.import-page[b-bvanxdcm4d] {
	display: grid;
	/* minmax(0, …) so a wide table scrolls inside its card instead of stretching the page */
	grid-template-columns: minmax(0, 1fr);
	gap: 20px;
	color: var(--color-neutral-900);
}

.import-muted[b-bvanxdcm4d] {
	margin: 0;
	color: var(--color-neutral-600);
}

.import-subtle[b-bvanxdcm4d] {
	color: var(--color-neutral-500);
}

.import-link[b-bvanxdcm4d] {
	color: var(--color-brand-green-darker);
}

/* The shared input behind "Upload new file" never shows; the button opens it. */
.import-hidden-input[b-bvanxdcm4d] {
	display: none;
}


/* -- Card ------------------------------------------------------------------------------------ */

.import-card[b-bvanxdcm4d] {
	background: var(--color-neutral-0);
	border: 1px solid var(--color-neutral-200);
	border-radius: var(--style-border-radius);
	box-shadow: var(--rc-shadow-card);
	min-width: 0;
}

/* Step header: marker, then title and description lined up optically with the marker. */
.import-step[b-bvanxdcm4d] {
	display: flex;
	gap: 16px;
	align-items: flex-start;
	padding: 22px 24px 18px;
}

.import-step__text[b-bvanxdcm4d] {
	display: grid;
	gap: 2px;
	padding-top: 2px;
	min-width: 0;
}

.import-step__text h2[b-bvanxdcm4d] {
	margin: 0;
	line-height: var(--line-height-relaxed);
}

.import-step__marker[b-bvanxdcm4d] {
	flex: none;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	box-sizing: border-box;
	border-radius: 50%;
	border: 1px solid var(--color-neutral-300);
	color: var(--color-neutral-800);
	font-size: var(--font-size-small);
	font-weight: var(--font-weight-semibold);
	font-variant-numeric: tabular-nums;
}

.import-step__marker--active[b-bvanxdcm4d] {
	background: var(--color-neutral-900);
	border-color: var(--color-neutral-900);
	color: var(--color-neutral-0);
}

/* Left padding lines the body up under the step title rather than under the marker. */
.import-card__body[b-bvanxdcm4d] {
	padding: 0 24px 24px 68px;
	min-width: 0;
}

.import-stack[b-bvanxdcm4d] {
	display: grid;
	gap: 16px;
}

/* Header of the cards that are not steps (Problems, Changes). */
.import-card__header[b-bvanxdcm4d] {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 12px 16px;
	padding: 18px 24px;
}

.import-card__title[b-bvanxdcm4d] {
	display: flex;
	align-items: center;
	gap: 10px;
}

.import-card__title h2[b-bvanxdcm4d] {
	margin: 0;
}

/* Step 3: one row, button on the right. */
.import-card--row[b-bvanxdcm4d] {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 16px;
	padding: 18px 24px;
}

/* Marker and text stay together; only the button wraps underneath on a narrow screen. */
.import-card__lead[b-bvanxdcm4d] {
	display: flex;
	align-items: flex-start;
	gap: 16px;
	flex: 1 1 280px;
	min-width: 0;
}

@media (max-width: 640px) {
	.import-card__body[b-bvanxdcm4d] {
		padding-left: 24px;
	}
}


/* -- Step 1: download options ---------------------------------------------------------------- */

.import-options[b-bvanxdcm4d] {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
	gap: 12px;
}

.import-option[b-bvanxdcm4d] {
	display: flex;
	flex-direction: column;
	gap: 14px;
	padding: 18px 20px;
	border: 1px solid var(--color-neutral-200);
	border-radius: var(--rc-radius-control);
	background: var(--color-neutral-50);
}

.import-option__text[b-bvanxdcm4d] {
	display: grid;
	gap: 4px;
	flex: 1;
}

.import-option__action[b-bvanxdcm4d] {
	align-self: flex-start;
}


/* -- Step 2: dropzone ------------------------------------------------------------------------ */

.import-dropzone[b-bvanxdcm4d] {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 10px;
	padding: 36px 24px;
	border: 1.5px dashed var(--color-neutral-300);
	border-radius: var(--rc-radius-control);
	background: var(--color-neutral-50);
	text-align: center;
	cursor: pointer;
	transition: border-color .12s ease-in-out, background-color .12s ease-in-out;
}

.import-dropzone:hover[b-bvanxdcm4d],
.import-dropzone--over[b-bvanxdcm4d] {
	border-color: var(--color-brand-green-darker);
	background: color-mix(in srgb, var(--color-brand-green-light) 18%, var(--color-neutral-0));
}

.import-dropzone:focus-within[b-bvanxdcm4d] {
	outline: 2px solid var(--color-brand-green-darker);
	outline-offset: 2px;
}

/* The real input covers the whole zone, so both clicking and dropping a file land on it. */
.import-dropzone[b-bvanxdcm4d]  input[type=file] {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	opacity: 0;
	cursor: pointer;
}

.import-dropzone__icon[b-bvanxdcm4d] {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	border-radius: var(--rc-radius-control);
	border: 1px solid var(--color-neutral-200);
	background: var(--color-neutral-0);
	color: var(--color-neutral-800);
	font-size: var(--font-size-large);
}


/* -- Step 2: uploaded file ------------------------------------------------------------------- */

.import-file[b-bvanxdcm4d] {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 14px;
	padding: 12px 14px;
	border: 1px solid var(--color-neutral-200);
	border-radius: var(--rc-radius-control);
}

.import-file__tile[b-bvanxdcm4d] {
	flex: none;
	display: flex;
	align-items: flex-end;
	justify-content: center;
	width: 36px;
	height: 42px;
	box-sizing: border-box;
	padding-bottom: 6px;
	border-radius: var(--rc-radius-field);
	background: color-mix(in srgb, var(--color-brand-green-light) 40%, var(--color-neutral-0));
	color: var(--color-brand-green-darker);
	font-size: var(--font-size-micro);
	font-weight: var(--font-weight-semibold);
	letter-spacing: var(--letter-spacing-caps);
}

.import-file__text[b-bvanxdcm4d] {
	flex: 1 1 200px;
	min-width: 0;
	display: grid;
	gap: 2px;
}

.import-file__name[b-bvanxdcm4d] {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.import-file__actions[b-bvanxdcm4d] {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}


/* -- Step 2: result alerts ------------------------------------------------------------------- */

.import-alert[b-bvanxdcm4d] {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 14px 16px;
	padding: 14px 16px;
	border-radius: var(--rc-radius-control);
	border: 1px solid transparent;
}

.import-alert__icon[b-bvanxdcm4d] {
	flex: none;
	align-self: flex-start;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 22px;
	height: 22px;
	margin-top: 1px;
	border-radius: 50%;
	color: var(--color-neutral-0);
	font-size: var(--font-size-small);
	font-weight: var(--font-weight-bold);
}

.import-alert__text[b-bvanxdcm4d] {
	flex: 1 1 360px;
	min-width: 0;
}

.import-alert__text strong[b-bvanxdcm4d] {
	font-weight: var(--font-weight-semibold);
}

.import-alert__action[b-bvanxdcm4d] {
	flex: none;
}

.import-alert--danger[b-bvanxdcm4d] {
	border-color: var(--rc-danger-border);
	background: var(--rc-surface-alert);
	color: var(--rc-danger-fg-deep);
}

.import-alert--danger .import-alert__icon[b-bvanxdcm4d] {
	background: var(--rc-danger-dot);
}

.import-alert--positive[b-bvanxdcm4d] {
	border-color: var(--rc-positive-border-strong);
	background: var(--rc-positive-bg);
	color: var(--rc-positive-fg);
}

.import-alert--positive .import-alert__icon[b-bvanxdcm4d] {
	background: var(--rc-positive-fg);
}

.import-alert--neutral[b-bvanxdcm4d] {
	border-color: var(--rc-border-chip);
	background: var(--rc-neutral-bg);
	color: var(--rc-neutral-fg);
}

.import-alert--neutral .import-alert__icon[b-bvanxdcm4d] {
	background: var(--rc-neutral-dot);
}


/* -- Tables ---------------------------------------------------------------------------------- */

/* The sheet summary sits in its own bordered frame; narrow screens scroll it sideways. */
.import-table-frame[b-bvanxdcm4d] {
	border: 1px solid var(--color-neutral-200);
	border-radius: var(--rc-radius-control);
	overflow-x: auto;
}

/* The Problems and Changes lists run edge to edge under their card header. */
.import-table-scroll[b-bvanxdcm4d] {
	border-top: 1px solid var(--color-neutral-200);
	overflow-x: auto;
}

.import-table[b-bvanxdcm4d] {
	width: 100%;
	margin: 0; /* the global reboot gives every table a bottom margin */
	border-collapse: collapse;
	font-size: var(--font-size-normal);
	font-variant-numeric: tabular-nums;
}

.import-table thead th[b-bvanxdcm4d] {
	padding: 10px 16px;
	background: var(--color-neutral-50);
	border-bottom: 1px solid var(--color-neutral-200);
	color: var(--color-neutral-600);
	font-size: var(--font-size-small);
	font-weight: var(--font-weight-medium);
	text-align: left;
	white-space: nowrap;
}

.import-table tbody td[b-bvanxdcm4d],
.import-table tbody th[b-bvanxdcm4d] {
	padding: 11px 16px;
	border-bottom: 1px solid var(--color-neutral-150);
	font-weight: var(--font-weight-regular);
	text-align: left;
}

.import-table tfoot td[b-bvanxdcm4d],
.import-table tfoot th[b-bvanxdcm4d] {
	padding: 11px 16px;
	font-weight: var(--font-weight-semibold);
	text-align: left;
}

.import-table .import-table__number[b-bvanxdcm4d] {
	width: 96px;
	text-align: right;
}

.import-table__sheet[b-bvanxdcm4d] {
	white-space: nowrap;
}

.import-table__count--zero[b-bvanxdcm4d] {
	color: var(--color-neutral-400);
}

.import-table .import-table__count--error[b-bvanxdcm4d] {
	color: var(--rc-danger-fg);
	font-weight: var(--font-weight-semibold);
}

.import-table__row--error[b-bvanxdcm4d] {
	background: var(--rc-surface-alert);
}

/* Problems and Changes: fixed columns so long messages wrap rather than widen the table. */
.import-table--list[b-bvanxdcm4d] {
	table-layout: fixed;
	min-width: 640px;
}

.import-table--list tbody td[b-bvanxdcm4d] {
	padding-top: 14px;
	padding-bottom: 14px;
	vertical-align: top;
}

.import-table--list tbody tr:last-child td[b-bvanxdcm4d] {
	border-bottom: none;
}

/* Outer cells line up with the card header's 24px gutter. */
.import-table--list th:first-child[b-bvanxdcm4d],
.import-table--list td:first-child[b-bvanxdcm4d] {
	padding-left: 24px;
}

.import-table--list th:last-child[b-bvanxdcm4d],
.import-table--list td:last-child[b-bvanxdcm4d] {
	padding-right: 24px;
}

.import-table__col-badge[b-bvanxdcm4d] {
	width: 124px;
}

.import-table__col-where[b-bvanxdcm4d] {
	width: 250px;
}

.import-table__message[b-bvanxdcm4d] {
	line-height: var(--line-height-relaxed);
	color: var(--color-neutral-800);
	overflow-wrap: anywhere;
}

.import-table__message .text-title[b-bvanxdcm4d] {
	color: var(--color-neutral-900);
}

.import-where[b-bvanxdcm4d] {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
}

.import-cell-ref[b-bvanxdcm4d] {
	padding: 1px 6px;
	border: 1px solid var(--color-neutral-200);
	border-radius: var(--rc-radius-field);
	background: var(--color-neutral-100);
	color: var(--color-neutral-800);
	font-family: var(--font-family-mono);
	font-size: var(--font-size-tiny);
	font-weight: var(--font-weight-medium);
	white-space: nowrap;
}

.import-segment-count[b-bvanxdcm4d] {
	margin-left: 4px;
	color: var(--color-neutral-500);
}

.import-empty[b-bvanxdcm4d] {
	margin: 0;
	padding: 32px 24px;
	text-align: center;
	color: var(--color-neutral-500);
}
/* /Pages/Secure/Settings/Products/Products.razor.rz.scp.css */
.product-page-content[b-am5hja0xi3] {
	height: 100%;
	display: grid;
	grid-template-rows: max-content max-content max-content 1fr;
}
/* /Pages/Secure/Settings/Settings.razor.rz.scp.css */
/* /Pages/Secure/Settings/SitesAndResources/Activities/CreateActivity.razor.rz.scp.css */
.option-container[b-54ehigjaqx] {
	display: flex;
	gap: 3px;
	flex-direction: column;
	background-color: var(--color-form-component-background);
	border: 1px solid var(--color-form-component-border);
	border-radius: var(--style-form-component-border-radius);
	margin: 5px 0;
	padding: 10px;
}

.option-row[b-54ehigjaqx] {
	display: grid;
	grid-template-columns: auto;
	grid-template-rows: auto;
	align-items: center;
	gap: 10px;
}

@media (min-width: 1300px) {
	.option-row[b-54ehigjaqx] {
		grid-template-columns: 1fr 1fr max-content;
		grid-template-rows: auto auto;

	}
	.option-row .allocation-switch[b-54ehigjaqx] {
		grid-column: 1 / span 2;
	}
	
	.option-row .row-button[b-54ehigjaqx] {
		grid-column: 3;
		grid-row: 1;
	}
}

.option-row .row-button[b-54ehigjaqx] {
	height: 100%;
	text-align: right;
}
/* /Pages/Secure/Settings/SitesAndResources/Activities/EditActivity.razor.rz.scp.css */
.option-container[b-rpdwn2onep] {
	display: flex;
	gap: 3px;
	flex-direction: column;
	background-color: var(--color-form-component-background);
	border: 1px solid var(--color-form-component-border);
	border-radius: var(--style-form-component-border-radius);
	margin: 5px 0;
	padding: 10px;
}

.option-row[b-rpdwn2onep] {
	display: grid;
	grid-template-columns: auto;
	grid-template-rows: auto;
	align-items: center;
	gap: 10px;
}

@media (min-width: 1300px) {
	.option-row[b-rpdwn2onep] {
		grid-template-columns: 1fr 1fr max-content;
		grid-template-rows: auto auto;

	}
	.option-row .allocation-switch[b-rpdwn2onep] {
		grid-column: 1 / span 2;
	}

	.option-row .row-button[b-rpdwn2onep] {
		grid-column: 3;
		grid-row: 1;
	}
}
/* /Pages/Secure/Settings/SitesAndResources/Classes/CreateClassInstance.razor.rz.scp.css */
.option-container[b-oxydhj0zbq] {
	display: flex;
	gap: 3px;
	flex-direction: column;
	background-color: var(--color-form-component-background);
	border: 1px solid var(--color-form-component-border);
	border-radius: var(--style-form-component-border-radius);
	margin: 5px 0;
	padding: 10px;
}

.option-row[b-oxydhj0zbq] {
	display: grid;
	grid-template-columns: auto auto;
	grid-template-rows: auto;
	align-items: center;
	gap: 10px;

	.form-select {
		grid-column: 1 / span 2;
	}

	.required-switch[b-oxydhj0zbq] {
		grid-column: 1;
		grid-row: 2;
	}

	.row-button[b-oxydhj0zbq] {
		height: 100%;
		text-align: right;
		grid-column: 2;
		grid-row: 2;
	}
}

@media (min-width: 1200px) {
	.option-row[b-oxydhj0zbq] {
		grid-template-columns: 1fr 1fr max-content;
		grid-template-rows: auto auto;

		.form-select {
			grid-column: 1 / span 1;
		}

		.required-switch[b-oxydhj0zbq] {
			grid-column: 2;
			grid-row: 1;
		}

		.row-button[b-oxydhj0zbq] {
			grid-column: 3;
			grid-row: 1;
		}
	}
}
/* /Pages/Secure/Settings/SitesAndResources/Classes/EditClassInstance.razor.rz.scp.css */
.option-container[b-iyool9gjin] {
	display: flex;
	gap: 3px;
	flex-direction: column;
	background-color: var(--color-form-component-background);
	border: 1px solid var(--color-form-component-border);
	border-radius: var(--style-form-component-border-radius);
	margin: 5px 0;
	padding: 10px;
}

.option-row[b-iyool9gjin] {
	display: grid;
	grid-template-columns: auto auto;
	grid-template-rows: auto;
	align-items: center;
	gap: 10px;

	.form-select {
		grid-column: 1 / span 2;
	}

	.required-switch[b-iyool9gjin] {
		grid-column: 1;
		grid-row: 2;
	}

	.row-button[b-iyool9gjin] {
		height: 100%;
		text-align: right;
		grid-column: 2;
		grid-row: 2;
	}
}

@media (min-width: 1200px) {
	.option-row[b-iyool9gjin] {
		grid-template-columns: 1fr 1fr max-content;
		grid-template-rows: auto auto;

		.form-select {
			grid-column: 1 / span 1;
		}

		.required-switch[b-iyool9gjin] {
			grid-column: 2;
			grid-row: 1;
		}

		.row-button[b-iyool9gjin] {
			grid-column: 3;
			grid-row: 1;
		}
	}
}
/* /Pages/Secure/Settings/SitesAndResources/Courses/EnrolmentPlans/CreateSiteCourseStreamEnrolmentPlan.razor.rz.scp.css */
.option-container[b-1os2c40a3s] {
	display: flex;
	gap: 3px;
	flex-direction: column;
	background-color: var(--color-form-component-background);
	border: 1px solid var(--color-form-component-border);
	border-radius: var(--style-form-component-border-radius);
	margin: 5px 0;
	padding: 10px;
}

.option-row[b-1os2c40a3s] {
	display: grid;
	grid-template-columns: auto auto;
	grid-template-rows: auto;
	align-items: center;
	gap: 10px;

	.form-select {
		grid-column: 1 / span 2;
	}

	.required-switch[b-1os2c40a3s] {
		grid-column: 1;
		grid-row: 2;
	}

	.row-button[b-1os2c40a3s] {
		height: 100%;
		text-align: right;
		grid-column: 2;
		grid-row: 2;
	}
}

@media (min-width: 1200px) {
	.option-row[b-1os2c40a3s] {
		grid-template-columns: 1fr 1fr max-content;
		grid-template-rows: auto auto;

		.form-select {
			grid-column: 1 / span 1;
		}

		.required-switch[b-1os2c40a3s] {
			grid-column: 2;
			grid-row: 1;
		}

		.row-button[b-1os2c40a3s] {
			grid-column: 3;
			grid-row: 1;
		}
	}
}
/* /Pages/Secure/Settings/SitesAndResources/Courses/EnrolmentPlans/EditSiteCourseStreamEnrolmentPlan.razor.rz.scp.css */
.option-container[b-jjo5k1lsup] {
	display: flex;
	gap: 3px;
	flex-direction: column;
	background-color: var(--color-form-component-background);
	border: 1px solid var(--color-form-component-border);
	border-radius: var(--style-form-component-border-radius);
	margin: 5px 0;
	padding: 10px;
}

.option-row[b-jjo5k1lsup] {
	display: grid;
	grid-template-columns: auto auto;
	grid-template-rows: auto;
	align-items: center;
	gap: 10px;

	.form-select {
		grid-column: 1 / span 2;
	}

	.required-switch[b-jjo5k1lsup] {
		grid-column: 1;
		grid-row: 2;
	}

	.row-button[b-jjo5k1lsup] {
		height: 100%;
		text-align: right;
		grid-column: 2;
		grid-row: 2;
	}
}

@media (min-width: 1200px) {
	.option-row[b-jjo5k1lsup] {
		grid-template-columns: 1fr 1fr max-content;
		grid-template-rows: auto auto;

		.form-select {
			grid-column: 1 / span 1;
		}

		.required-switch[b-jjo5k1lsup] {
			grid-column: 2;
			grid-row: 1;
		}

		.row-button[b-jjo5k1lsup] {
			grid-column: 3;
			grid-row: 1;
		}
	}
}
/* /Pages/Secure/Settings/SitesAndResources/EntryPoints/SiteEntryPointAccessProfiles.razor.rz.scp.css */
/* Shown when no access profile is selected. An entry point in that state denies everyone, which is a
   legitimate mid-configuration state but never an intended resting one. */
.access-profile-warning[b-h09tyy6upv] {
	display: block;
	color: var(--color-status-danger);
	font-size: 0.85em;
	margin-bottom: 0.5rem;
}
/* /Pages/Secure/Settings/SitesAndResources/EntryPoints/SiteEntryPointDevices.razor.rz.scp.css */
/* Inline warning in the reader grid - "already assigned to X", "device is disabled". Deliberately
   the danger colour: an operator who misses this ends up with a turnstile that never reads. */
.device-warning[b-mwp7ohhl1r] {
	color: var(--color-status-danger);
	font-size: 0.85em;
}
/* /Pages/Secure/Settings/SitesAndResources/EntryPoints/SiteEntryPointFormFields.razor.rz.scp.css */
/* Inline warning inside a form row - used when a setting is switched on but cannot take effect with
   the current configuration, e.g. the zone prompt on a single-zone entry point. */
.entry-point-warning[b-22bd1hqp18] {
	display: block;
	color: var(--color-status-danger);
	font-size: 0.85em;
	margin-top: 0.25rem;
}

/* ── Zone button order (D57a) ───────────────────────────────────────────────
   Mirrors the drag-to-reorder row in Components/DataCollection/FormQuestionRow,
   so a reorder feels the same wherever the operator meets one. */
.zone-order-list[b-22bd1hqp18] {
	display: flex;
	flex-direction: column;
	gap: 6px;
	max-width: 520px;
}

.zone-order-row[b-22bd1hqp18] {
	display: flex;
	align-items: center;
	gap: 10px;
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 8px;
	padding: 8px 10px 8px 8px;
	min-height: 44px;
	transition: border-color 0.15s, box-shadow 0.15s;
}

.zone-order-row:hover[b-22bd1hqp18] {
	border-color: #cbd5e1;
}

.zone-order-row--drag-over[b-22bd1hqp18] {
	border-color: #7c5295;
	box-shadow: 0 0 0 3px rgba(124, 82, 149, 0.15);
}

.zone-order-row--retired .zone-order-row__name[b-22bd1hqp18] {
	color: #94a3b8;
	text-decoration: line-through;
}

.zone-order-row__drag[b-22bd1hqp18] {
	color: #d1d5db;
	cursor: grab;
	font-size: 16px;
	flex-shrink: 0;
	transition: color 0.1s;
}

.zone-order-row:hover .zone-order-row__drag[b-22bd1hqp18] {
	color: #94a3b8;
}

.zone-order-row__position[b-22bd1hqp18] {
	flex-shrink: 0;
	min-width: 20px;
	color: #94a3b8;
	font-variant-numeric: tabular-nums;
}

.zone-order-row__name[b-22bd1hqp18] {
	flex: 1;
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}
/* /Pages/Secure/Settings/SitesAndResources/EntryPoints/SiteEntryPoints.razor.rz.scp.css */
/* Secondary text inside a grid cell - used to spell out the multi-zone consequence and to flag an
   entry point that accepts no access profile and therefore lets nobody through (WP-05 §6). */
.entry-point-hint[b-8jh5poja0r] {
	color: var(--color-neutral-600);
	font-size: 0.85em;
}
/* /Pages/Secure/Settings/SitesAndResources/PosLayouts/CreateSitePosLayout.razor.rz.scp.css */
.pos-layout-grid[b-t8gpql5rvl] {
    display: grid;
    gap: 6px;
}

.pos-layout-cell[b-t8gpql5rvl] {
    aspect-ratio: 1 / 1;
    border: 2px dashed #cbd5e1;
    border-radius: 6px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    position: relative;
    overflow: hidden;
    transition: border-color 0.15s;
    user-select: none;
	padding: 10px;
	gap: 10px;
	max-width: 150px;
}

.pos-layout-cell:hover[b-t8gpql5rvl] {
	color: var(--accent-foreground-rest);
    border-color: var(--accent-fill-rest);
}

.pos-layout-cell.has-product[b-t8gpql5rvl] {
    border-style: solid;
	background-color: #fff;
	--cell-colour: transparent;
	border-left: 4px solid var(--cell-colour);
}

.cell-name[b-t8gpql5rvl] {
	font-size: 14px;
	font-weight: 600;
	color: #212529;
	line-height: 1.3;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	height: 40px;
	text-align: center;
}

.cell-price[b-t8gpql5rvl] {
    font-size: 10px;
    color: var(--neutral-foreground-hint-rest);
    padding-bottom: 2px;
}

.pos-layout-cell__delete[b-t8gpql5rvl] {
    position: absolute;
    top: 5px;
    right: 5px;
    z-index: 1;
	background: #fee;
	height: 36px;
	border-radius: 5px;
}

.pos-layout-cell__colour[b-t8gpql5rvl] {
	position: absolute;
	top: 5px;
	left: 5px;
	z-index: 1;
	background: #fafafa;
	height: 36px;
	border-radius: 5px;
}

.pos-layout-grid-hint[b-t8gpql5rvl] {
    color: var(--neutral-foreground-hint-rest);
    font-style: italic;
    margin: 0;
}
/* /Pages/Secure/Settings/SitesAndResources/PosLayouts/EditSitePosLayout.razor.rz.scp.css */
.pos-layout-grid[b-fp8eo9nwnb] {
	display: grid;
	gap: 6px;
}

.pos-layout-cell[b-fp8eo9nwnb] {
	aspect-ratio: 1 / 1;
	border: 2px dashed #cbd5e1;
	border-radius: 6px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	position: relative;
	overflow: hidden;
	transition: border-color 0.15s;
	user-select: none;
	padding: 10px;
	gap: 10px;
	max-width: 150px;
}

.pos-layout-cell:hover[b-fp8eo9nwnb] {
	color: var(--accent-foreground-rest);
	border-color: var(--accent-fill-rest);
}

.pos-layout-cell.has-product[b-fp8eo9nwnb] {
	border-style: solid;
	background-color: #fff;
	--cell-colour: transparent;
	border-left: 4px solid var(--cell-colour);
}

.cell-name[b-fp8eo9nwnb] {
	font-size: 14px;
	font-weight: 600;
	color: #212529;
	line-height: 1.3;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	height: 40px;
	text-align: center;
}

.cell-price[b-fp8eo9nwnb] {
	font-size: 10px;
	color: var(--neutral-foreground-hint-rest);
	padding-bottom: 2px;
}

.pos-layout-cell__delete[b-fp8eo9nwnb] {
	position: absolute;
	top: 5px;
	right: 5px;
	z-index: 1;
	background: #fee;
	height: 36px;
	border-radius: 5px;
}

.pos-layout-cell__colour[b-fp8eo9nwnb] {
	position: absolute;
	top: 5px;
	left: 5px;
	z-index: 1;
	background: #fafafa;
	height: 36px;
	border-radius: 5px;
}

.pos-layout-grid-hint[b-fp8eo9nwnb] {
	color: var(--neutral-foreground-hint-rest);
	font-style: italic;
	margin: 0;
}
/* /Pages/Secure/Settings/SitesAndResources/SiteResourceAvailability.razor.rz.scp.css */
.calendar-container[b-9uxp9px63x] {
	
	font-weight: 600;
	background-color: white;
	
	.calendar-title {
		font-size: 12pt;
		padding: 0.5rem 1rem;
		background-color: #f5f6f8;
		color: #666;
		width: 100%;
	}
	
	.calendar-desc[b-9uxp9px63x] {
		color: #777;
		font-size: 10pt;
		font-weight: 400;
	}
	
	.calendar-content[b-9uxp9px63x] {
		padding: 20px;
	}
}

.availability-grid[b-9uxp9px63x] {
	width: 100%;
	display: grid;
	grid-template-columns: repeat(8, 1fr);
	justify-items: center;
	align-items: center;
	gap: 0.25rem;
	
	.day-header {
		display: flex;
		flex-direction: column;
		align-items: center;
	}
	
	span[b-9uxp9px63x] {
		text-align: center;
		font-weight: bold;
	}
	
	.resource-count[b-9uxp9px63x] {
		text-align: center;
		max-width: 3rem;
		width: 2rem;
		height: 2rem;
		display: flex;
		align-items: center;
		justify-content: center;
		border-radius: 2px;
	}
}
/* /Pages/Secure/Settings/Subscriptions/CreateSubscriptionTypeDefinition.razor.rz.scp.css */
.option-container[b-lnb37gly3i] {
	display: flex;
	gap: 3px;
	flex-direction: column;
	background-color: var(--color-form-component-background);
	border: 1px solid var(--color-form-component-border);
	border-radius: var(--style-form-component-border-radius);
	margin: 5px 0;
	padding: 10px;
}

.option-row[b-lnb37gly3i] {
	display: grid;
	grid-template-columns: auto auto;
	grid-template-rows: auto;
	align-items: center;
	gap: 10px;

	.form-select {
		grid-column: 1 / span 2;
	}

	.required-switch[b-lnb37gly3i] {
		grid-column: 1;
		grid-row: 2;
	}

	.row-button[b-lnb37gly3i] {
		height: 100%;
		text-align: right;
		grid-column: 2;
		grid-row: 2;
	}
}

@media (min-width: 1200px) {
	.option-row[b-lnb37gly3i] {
		grid-template-columns: 1fr 1fr max-content;
		grid-template-rows: auto auto;

		.form-select {
			grid-column: 1 / span 1;
		}

		.required-switch[b-lnb37gly3i] {
			grid-column: 2;
			grid-row: 1;
		}

		.row-button[b-lnb37gly3i] {
			grid-column: 3;
			grid-row: 1;
		}
	}
}
/* /Pages/Secure/Settings/Subscriptions/EditSubscriptionTypeDefinition.razor.rz.scp.css */
.option-container[b-kcj37hnmsa] {
	display: flex;
	gap: 3px;
	flex-direction: column;
	background-color: var(--color-form-component-background);
	border: 1px solid var(--color-form-component-border);
	border-radius: var(--style-form-component-border-radius);
	margin: 5px 0;
	padding: 10px;
}

.option-row[b-kcj37hnmsa] {
	display: grid;
	grid-template-columns: auto auto;
	grid-template-rows: auto;
	align-items: center;
	gap: 10px;

	.form-select {
		grid-column: 1 / span 2;
	}

	.required-switch[b-kcj37hnmsa] {
		grid-column: 1;
		grid-row: 2;
	}

	.row-button[b-kcj37hnmsa] {
		height: 100%;
		text-align: right;
		grid-column: 2;
		grid-row: 2;
	}
}

@media (min-width: 1200px) {
	.option-row[b-kcj37hnmsa] {
		grid-template-columns: 1fr 1fr max-content;
		grid-template-rows: auto auto;

		.form-select {
			grid-column: 1 / span 1;
		}

		.required-switch[b-kcj37hnmsa] {
			grid-column: 2;
			grid-row: 1;
		}

		.row-button[b-kcj37hnmsa] {
			grid-column: 3;
			grid-row: 1;
		}
	}
}
/* /Pages/Secure/Stock/Counts/StockCounts.razor.rz.scp.css */
.stock-counts-page[b-r3w77bhba7] {
	margin-top: 24px;
	min-width: 0;
}

.stock-counts-cards[b-r3w77bhba7] {
	display: none;
	flex-direction: column;
	gap: 16px;
}

.stock-count-card[b-r3w77bhba7] {
	background: var(--color-neutral-0);
	border: 0.5px solid var(--color-border-light);
	border-radius: 10px;
	padding: 14px 16px;
}

.stock-count-card__header[b-r3w77bhba7] {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 6px;
}

.stock-count-card__number[b-r3w77bhba7] {
	font-size: 13px;
	font-weight: var(--font-weight-medium);
	font-variant-numeric: tabular-nums;
	color: var(--color-neutral-700);
}

.stock-count-card__warehouse[b-r3w77bhba7] {
	font-size: 15px;
	font-weight: var(--font-weight-medium);
	color: var(--color-neutral-900);
	line-height: 1.25;
}

.stock-count-card__meta[b-r3w77bhba7] {
	margin-top: 4px;
	font-size: 12px;
	color: var(--color-neutral-600);
	line-height: 1.3;
}

.stock-count-card__progress[b-r3w77bhba7] {
	margin-top: 16px;
}

.stock-count-card__progress-bar[b-r3w77bhba7] {
	background: var(--color-neutral-150);
	border-radius: 4px;
	height: 6px;
	overflow: hidden;
}

.stock-count-card__progress-fill[b-r3w77bhba7] {
	background: var(--color-brand-green);
	height: 100%;
	border-radius: 4px;
	transition: width 0.3s;
}

.stock-count-card__progress-stats[b-r3w77bhba7] {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 12px;
	margin-top: 6px;
	font-size: 12px;
	font-variant-numeric: tabular-nums;
	color: var(--color-neutral-600);
}

.stock-count-card__progress-percent[b-r3w77bhba7] {
	font-weight: var(--font-weight-medium);
	color: var(--color-neutral-800);
}

.stock-count-card__actions[b-r3w77bhba7] {
	display: flex;
	flex-direction: column;
	margin-top: 14px;
}

.stock-count-card__actions-primary[b-r3w77bhba7] {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.stock-count-card__actions-cancel[b-r3w77bhba7] {
	margin-top: 16px;
}

.stock-count-card__actions-cancel[b-r3w77bhba7]  .button {
	min-height: auto;
	padding-bottom: 0;
}

.stock-count-card__actions[b-r3w77bhba7]  .button {
	width: 100%;
	margin: 0;
	min-height: 44px;
	text-transform: none;
	font-size: 14px;
	font-weight: var(--font-weight-semibold);
}

@media screen and (max-width: 799px) {
	.stock-counts-page[b-r3w77bhba7] {
		margin-top: 16px;
	}

	.stock-counts-grid[b-r3w77bhba7] {
		display: none;
	}

	.stock-counts-cards[b-r3w77bhba7] {
		display: flex;
	}
}

@media screen and (min-width: 800px) {
	.stock-counts-cards[b-r3w77bhba7] {
		display: none !important;
	}
}
/* /Pages/Secure/Stock/Counts/UpdateStockCount.razor.rz.scp.css */
/* ── Layout ──────────────────────────────────────────────────── */
.sc-layout[b-j82tq99ajb] {
    height: 100%;
    min-height: 0;
    display: grid;
    grid-template-columns: 280px 1fr;
    gap: 1rem;
    overflow: hidden;
}

@media (max-width: 799px) {
    .sc-layout[b-j82tq99ajb] {
        grid-template-columns: 1fr;
        grid-template-rows: 1fr;
    }

    .panel--mobile-hidden[b-j82tq99ajb] {
        display: none !important;
    }
}

.sc-panel[b-j82tq99ajb] {
    height: 100%;
    min-height: 0;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

.sc-group-list[b-j82tq99ajb] {
    background-color: var(--color-neutral-0);
    border-radius: 0 0 10px 10px;
    padding: 16px;
    flex: 1;
	display: flex;
	flex-direction: column;
	gap: 16px;
    overflow-y: auto;
    min-height: 0;
}

/* ── Progress header ─────────────────────────────────────────── */
.sc-progress-header[b-j82tq99ajb] {
    background: color-mix(in srgb, var(--color-module-stock) 80%, var(--color-neutral-0));
    border-radius: 0;
    color: var(--color-neutral-0);
    padding: 12px 14px 10px;
}

.sc-progress-header__title[b-j82tq99ajb] {
    font-size: 15px;
    font-weight: var(--font-weight-medium);
    color: rgba(255, 255, 255, 0.9);
}

.sc-progress-header__top[b-j82tq99ajb] {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 8px 0 16px;
}

.sc-progress-header__badge[b-j82tq99ajb] {
    background: rgba(255, 255, 255, 0.16);
    border-radius: 8px;
    padding: 6px 10px;
    text-align: center;
    flex: 1 0 auto;
    min-width: 52px;
}

.sc-progress-header__badge-count[b-j82tq99ajb] {
    font-size: 20px;
    font-weight: var(--font-weight-medium);
    line-height: 1;
}

.sc-progress-header__badge-count--variance[b-j82tq99ajb] {
    color: var(--color-status-warning-light);
}

.sc-progress-header__badge-total[b-j82tq99ajb] {
    font-size: 11px;
    font-weight: var(--font-weight-regular);
    color: rgba(255, 255, 255, 0.75);
}

.sc-progress-header__badge-label[b-j82tq99ajb] {
    font-size: 10px;
    color: rgba(255, 255, 255, 0.75);
    margin-top: 1px;
}

.sc-progress-header__footer[b-j82tq99ajb] {
    font-size: 11px;
    color: rgba(255, 255, 255, 0.75);
    margin-top: 4px;
}

.sc-progress-bar[b-j82tq99ajb] {
    background: rgba(255, 255, 255, 0.28);
    border-radius: 4px;
    height: 6px;
    overflow: hidden;
}

.sc-progress-bar__fill[b-j82tq99ajb] {
    background: var(--color-brand-green);
    height: 100%;
    border-radius: 4px;
    transition: width 0.3s;
}

/* ── Group-by selector & filter buttons ─────────────────────── */
.sc-group-by-row[b-j82tq99ajb] {
    background: var(--color-neutral-0);
    padding: 16px 16px 0;
    display: flex;
    gap: 8px;
    flex-shrink: 0;
}

.sc-filter-btn[b-j82tq99ajb] {
    border: 1px solid var(--color-border-light);
    border-radius: 6px;
    cursor: pointer;
    height: 2rem;
    padding: 0 0.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: var(--font-size-small);
    transition: background 0.1s;
}

.sc-group-by-btn--active[b-j82tq99ajb],
.sc-count-button--active[b-j82tq99ajb],
.sc-group-card--active[b-j82tq99ajb] {
    border-color: var(--color-brand-primary);
    background: var(--color-status-info-light);
}

.sc-group-by-btn--active[b-j82tq99ajb],
.sc-count-button--active[b-j82tq99ajb] {
    color: var(--color-brand-primary);
}

.sc-group-by-btn[b-j82tq99ajb] {
    flex: 1;
    background: var(--color-neutral-50);
}

.sc-group-by-btn:hover[b-j82tq99ajb] {
    background: var(--color-neutral-150);
}

.sc-group-by-btn--active[b-j82tq99ajb] {
    font-weight: var(--font-weight-medium);
}

/* ── Group cards ─────────────────────────────────────────────── */
.sc-group-card[b-j82tq99ajb] {
    background: var(--color-neutral-0);
    border: 1px solid var(--color-border-light);
    border-radius: 10px;
    padding: 14px 16px;
    cursor: pointer;
    transition: background 0.1s;
}

.sc-group-card:hover[b-j82tq99ajb] {
    background: var(--color-neutral-50);
}

.sc-group-card__header[b-j82tq99ajb] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 6px;
}

.sc-group-card__name[b-j82tq99ajb] {
    flex: 1;
    min-width: 0;
    font-size: 15px;
    font-weight: var(--font-weight-medium);
    color: var(--color-neutral-900);
    line-height: 1.25;
}

.sc-group-card--active .sc-group-card__name[b-j82tq99ajb] {
    color: var(--color-brand-primary);
}

.sc-group-card__meta[b-j82tq99ajb] {
    margin-top: 4px;
    font-size: 12px;
    color: var(--color-neutral-600);
    line-height: 1.3;
}

.sc-group-card__progress[b-j82tq99ajb] {
    margin-top: 16px;
}

.sc-group-card__progress-bar[b-j82tq99ajb] {
    background: var(--color-neutral-150);
    border-radius: 4px;
    height: 6px;
    overflow: hidden;
}

.sc-group-card__progress-fill[b-j82tq99ajb] {
    background: var(--color-brand-green);
    height: 100%;
    border-radius: 4px;
    transition: width 0.3s;
}

.sc-group-card__progress-stats[b-j82tq99ajb] {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 12px;
    margin-top: 6px;
    font-size: 12px;
    font-variant-numeric: tabular-nums;
    color: var(--color-neutral-600);
}

.sc-group-card__progress-percent[b-j82tq99ajb] {
    font-weight: var(--font-weight-medium);
    color: var(--color-neutral-800);
}

.sc-group-card--active .sc-group-card__progress-percent[b-j82tq99ajb] {
    color: var(--color-brand-primary);
}

/* ── Items panel toolbar ─────────────────────────────────────── */
.sc-mobile-back[b-j82tq99ajb] {
    display: flex;
    align-items: center;
    gap: 8px;
    height: 2rem;
}

.sc-mobile-back__name[b-j82tq99ajb] {
    flex: 1;
    min-width: 0;
    font-size: var(--font-size-normal);
    font-weight: var(--font-weight-medium);
    color: var(--color-brand-primary);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.sc-mobile-back__pct[b-j82tq99ajb] {
    font-size: 13px;
    font-weight: var(--font-weight-medium);
    color: var(--color-brand-primary);
    flex-shrink: 0;
}

.sc-toolbar[b-j82tq99ajb] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    width: 100%;
    padding: 16px;
    background-color: var(--color-neutral-50);
    box-shadow: 0 0 10px rgba(0,0,0,0.1);
    flex-shrink: 0;
}

.sc-search[b-j82tq99ajb] {
    flex: 1 1 300px;
}

@media (min-width: 800px) {
    .sc-toolbar[b-j82tq99ajb] {
        flex-direction: row;
    }
    .sc-mobile-back[b-j82tq99ajb] {
        display: none;
    }
}

.sc-count-buttons[b-j82tq99ajb] {
    display: flex;
    gap: 0.25rem;
    flex: 0 0 auto;
}

.sc-count-button[b-j82tq99ajb] {
    flex-shrink: 0;
    background: var(--color-neutral-0);
}

.sc-count-button:hover[b-j82tq99ajb] {
    background: var(--color-neutral-50);
}

/* ── Items list ──────────────────────────────────────────────── */
.sc-items-list[b-j82tq99ajb] {
    flex: 1;
    min-height: 0;
    overflow-y: auto;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
    padding: 16px 16px 16px 0;
}

.sc-items-list .sc-item-card[b-j82tq99ajb] {
    margin-bottom: 16px;
}

.sc-items-list .sc-item-card:last-child[b-j82tq99ajb] {
    margin-bottom: 0;
}

@media (max-width: 799px) {
    .sc-items-list[b-j82tq99ajb] {
        padding: 16px;
    }
}

.sc-items-placeholder[b-j82tq99ajb] {
    margin-top: 48px;
    text-align: center;
    color: var(--color-neutral-500);
    font-size: var(--font-size-normal);
}

.sc-cross-group__label[b-j82tq99ajb] {
    font-size: 13px;
    color: var(--color-neutral-600);
    text-align: center;
    padding: 16px 8px 4px;
}

.sc-cross-group__subheading[b-j82tq99ajb] {
    font-size: 11px;
    color: var(--color-neutral-500);
    text-align: center;
    padding: 0 8px 12px;
}

/* ── Item card ───────────────────────────────────────────────── */
.sc-item-card[b-j82tq99ajb] {
    background: var(--color-neutral-0);
    border: 1px solid var(--color-border-light);
    border-radius: 10px;
    overflow: hidden;
    cursor: pointer;
    transition: opacity 0.1s;
    flex-shrink: 0;
}

@media (min-width: 800px) {
    .sc-item-card[b-j82tq99ajb] {
        display: flex;
        align-items: stretch;
    }

    .sc-item-card__body[b-j82tq99ajb] {
        flex: 1;
    }

    .sc-item-card__footer[b-j82tq99ajb] {
        border-top: none;
        border-left: 0.5px solid var(--color-border-light);
        width: 240px;
        flex-shrink: 0;
    }

    .sc-item-card--expanded[b-j82tq99ajb] {
        flex-wrap: wrap;
    }

    .sc-item-card--expanded .sc-variant-rows[b-j82tq99ajb] {
        flex-basis: 100%;
    }
}

.sc-item-card:active[b-j82tq99ajb] {
    opacity: 0.7;
}

.sc-item-card__body[b-j82tq99ajb] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 12px;
}

.sc-item-card__main[b-j82tq99ajb] {
    flex: 1;
    min-width: 0;
}

.sc-item-card__name[b-j82tq99ajb] {
    font-size: 13px;
    font-weight: var(--font-weight-medium);
    color: var(--color-neutral-900);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    margin-bottom: 2px;
}

.sc-item-card__sub[b-j82tq99ajb] {
    font-size: 11px;
    color: var(--color-neutral-500);
    display: flex;
    flex-wrap: wrap;
	align-items: center;
}

.sc-item-card__actions[b-j82tq99ajb] {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    height: 32px;
}

.sc-item-card__status[b-j82tq99ajb] {
    flex-shrink: 0;
}

.sc-item-card__footer[b-j82tq99ajb] {
    display: flex;
    border-top: 0.5px solid var(--color-border-light);
}

.sc-item-card__stat[b-j82tq99ajb] {
    flex: 1;
    padding: 8px 6px 1px;
    text-align: center;
    border-right: 0.5px solid var(--color-border-light);
}

.sc-item-card__stat:last-child[b-j82tq99ajb] {
    border-right: none;
}

.sc-item-card__stat--counted[b-j82tq99ajb] {
    background: var(--color-status-info-light);
}

.sc-item-card__stat-lbl[b-j82tq99ajb] {
    font-size: 10px;
    color: var(--color-neutral-500);
    margin-bottom: 3px;
}

.sc-item-card__stat-val[b-j82tq99ajb] {
    font-size: 15px;
    font-weight: var(--font-weight-medium);
    color: var(--color-neutral-800);
    height: 32px;
}

.sc-item-card__stat-val--muted[b-j82tq99ajb] {
    color: var(--color-neutral-300);
}

.sc-item-card__stat--counted .sc-item-card__stat-val[b-j82tq99ajb] {
    color: var(--color-brand-primary);
}

.sc-item-card__stat--editing[b-j82tq99ajb] {
    background: var(--color-status-info-light);
    padding-bottom: 0;
}

.sc-item-card__stat--editing .sc-item-card__stat-lbl[b-j82tq99ajb] {
    margin-bottom: 0;
}

/* ── Inline input ────────────────────────────────────────────── */
.sc-inline-count-input[b-j82tq99ajb] {
    width: 100%;
    border: 1px solid var(--color-brand-primary);
    border-radius: 4px;
    background: var(--color-neutral-0);
    text-align: center;
    font-size: 15px;
    font-weight: var(--font-weight-medium);
    color: var(--color-brand-primary);
    padding: 0 4px;
    outline: none;
    -moz-appearance: textfield;
}

.sc-inline-count-input[b-j82tq99ajb]::-webkit-outer-spin-button,
.sc-inline-count-input[b-j82tq99ajb]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

/* ── Overlay & sheet ─────────────────────────────────────────── */
.sc-overlay[b-j82tq99ajb] {
    position: fixed;
    inset: 0;
    background: rgba(10, 18, 38, 0.3);
    z-index: 50;
}

.sc-sheet[b-j82tq99ajb] {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    background: var(--color-neutral-0);
    border-radius: 18px 18px 0 0;
    z-index: 51;
	max-height: 90vh;
    overflow-y: auto;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
	padding: 1rem 1rem calc(1.5rem + env(safe-area-inset-bottom));
}

.sc-sheet__header[b-j82tq99ajb] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.sc-sheet__item-info[b-j82tq99ajb] {
    flex: 1;
    min-width: 0;
}

.sc-sheet__item-name[b-j82tq99ajb] {
    font-size: 20px;
    font-weight: var(--font-weight-medium);
    color: var(--color-neutral-900);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.sc-sheet__item-sub[b-j82tq99ajb] {
    font-size: 11px;
	color: var(--color-neutral-500);
    margin-top: 2px;
}

.sc-sheet__actions[b-j82tq99ajb]
{
	height: 38px;
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 0.5rem;
}

.sc-sheet__nav[b-j82tq99ajb] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
	height: 100%;
}

.sc-sheet__nav-pos[b-j82tq99ajb] {
    font-size: 11px;
    color: var(--color-neutral-500);
    min-width: 30px;
    text-align: center;
}

.sc-sheet__display[b-j82tq99ajb] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
}

.sc-sheet__display-col[b-j82tq99ajb] {
    background-color: var(--color-neutral-100);
    border-radius: 12px;
    padding: 10px;
    font-size: 10pt;
    color: var(--color-text-heading);
    font-weight: var(--font-weight-semibold);
    text-align: center;
}

.sc-sheet__display-lbl[b-j82tq99ajb] {
    font-size: 10px;
    color: var(--color-neutral-400);
    margin-bottom: 3px;
}

.sc-sheet__display-val[b-j82tq99ajb] {
    font-size: 26px;
    font-weight: var(--font-weight-medium);
    color: var(--color-neutral-800);
}

.sc-sheet__display-val--large[b-j82tq99ajb] {
    font-size: 36px;
    line-height: 1;
}

.sc-sheet__display-val--active[b-j82tq99ajb] {
    color: var(--color-brand-primary);
}

.sc-sheet__display-val--muted[b-j82tq99ajb] {
    color: var(--color-neutral-300);
}

/* ── Variant badge on grouped cards ─────────────────────────── */
.sc-variant-badge[b-j82tq99ajb] {
    font-size: 11px;
    color: var(--color-neutral-600);
}

.sc-variant-badge--partial[b-j82tq99ajb] {
    color: var(--color-status-warning);
}

/* ── Expanded variant rows ───────────────────────────────────── */
.sc-item-card--expanded[b-j82tq99ajb] {
    cursor: default;
}

.sc-item-card--expanded .sc-item-card__body[b-j82tq99ajb],
.sc-item-card--expanded .sc-item-card__footer[b-j82tq99ajb] {
    cursor: pointer;
}

.sc-variant-rows[b-j82tq99ajb] {
    border-top: 0.5px solid var(--color-border-light);
}

.sc-variant-row[b-j82tq99ajb] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 4px 0 4px 28px;
    border-bottom: 0.5px solid var(--color-border-light);
    cursor: pointer;
    transition: background 0.1s;
}

.sc-variant-row:last-child[b-j82tq99ajb] {
    border-bottom: none;
}

.sc-variant-row:hover[b-j82tq99ajb] {
    background: var(--color-neutral-50);
}

.sc-variant-row--editing[b-j82tq99ajb] {
    background: var(--color-status-info-light);
}

.sc-variant-row--editing:hover[b-j82tq99ajb] {
    background: var(--color-status-info-light);
}

.sc-variant-row__name[b-j82tq99ajb] {
    flex: 1;
    min-width: 0;
    font-size: 12px;
    color: var(--color-neutral-800);
    font-weight: var(--font-weight-medium);
}

.sc-variant-row__barcode[b-j82tq99ajb] {
    display: block;
    font-size: 10px;
    color: var(--color-neutral-500);
    font-weight: var(--font-weight-regular);
    margin-top: 1px;
}

.sc-variant-row__actions[b-j82tq99ajb] {
    display: flex;
    align-items: center;
    gap: 4px;
    flex-shrink: 0;
}

.sc-variant-row .sc-item-card__footer[b-j82tq99ajb] {
    border-top: none;
    flex-shrink: 0;
    width: 240px;
    height: 44px;
}

.sc-variant-row .sc-item-card__stat[b-j82tq99ajb] {
    padding: 0 6px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.sc-variant-row .sc-item-card__stat-val[b-j82tq99ajb] {
    height: auto;
    font-size: 13px;
    line-height: 1.4;
}

@media (max-width: 799px) {
    .sc-variant-row .sc-item-card__footer[b-j82tq99ajb] {
        width: 180px;
    }
}

/* ── Sheet variant tabs ──────────────────────────────────────── */
.sc-sheet__variant-tabs[b-j82tq99ajb] {
    display: flex;
    gap: 0.25rem;
    flex-wrap: nowrap;
    overflow-x: auto;
	padding-bottom: 0.25rem;
}

.sc-sheet__variant-tab[b-j82tq99ajb] {
    background: var(--color-neutral-0);
    flex-shrink: 0;
}

.sc-sheet__variant-tab:hover[b-j82tq99ajb] {
    background: var(--color-neutral-50);
}
/* /Pages/Secure/Stock/Inventory/StockInventory.razor.rz.scp.css */
.stock-inventory-container[b-fzpclot9mv] {
	display: flex;
	flex-direction: column;
	gap: 24px;
	min-width: 0;
	min-height: 100%;
	padding-bottom: 4px;
}

.stock-inventory-container[b-fzpclot9mv]  section.kpi-grid {
	margin-bottom: 0;
}

.stock-inventory-container .data-grid-container[b-fzpclot9mv] {
	min-height: 20rem;
}

.grid-cell-stack[b-fzpclot9mv] {
	display: flex;
	flex-direction: column;
	gap: 2px;
	min-width: 0;
}


.grid-cell-primary[b-fzpclot9mv] {
	color: #292E40;
	font-weight: var(--font-weight-medium);
	line-height: 1.25;
}

.grid-cell-secondary[b-fzpclot9mv] {
	color: #596980;
	font-size: 12px;
	font-weight: var(--font-weight-regular);
	line-height: 1;
}

.stock-inventory-container .data-grid-container[b-fzpclot9mv]  table.fluent-data-grid tbody td {
	color: #3e4b5e;
	font-size: 13px;
	font-weight: var(--font-weight-regular);
	font-variant-numeric: tabular-nums;
}

.stock-inventory-container .data-grid-container[b-fzpclot9mv]  table.fluent-data-grid tbody td:first-child {
	padding-top: 8px;
	padding-bottom: 10px;
	vertical-align: top;
}

@media screen and (max-width: 999px) {
	.grid-cell-secondary[b-fzpclot9mv] {
		font-size: 11px;
	}

	.stock-inventory-container .data-grid-container[b-fzpclot9mv]  table.fluent-data-grid tbody td {
		font-size: 12px;
	}

	.stock-inventory-container .data-grid-container[b-fzpclot9mv]  table.fluent-data-grid tbody td:first-child {
		padding-top: 6px;
		padding-bottom: 8px;
	}
}

@media screen and (max-width: 799px) {
	.stock-inventory-container .data-grid-container[b-fzpclot9mv]  table.fluent-data-grid th:last-child,
	.stock-inventory-container .data-grid-container[b-fzpclot9mv]  table.fluent-data-grid td:last-child {
		min-width: 152px;
	}

	.stock-inventory-container .data-grid-container[b-fzpclot9mv]  table.fluent-data-grid th:last-child fluent-button::part(control) {
		white-space: nowrap;
	}
}
/* /Pages/Secure/Stock/StockModuleLayout.razor.rz.scp.css */
.page__content[b-ct3vrssyiw] {
	padding: 16px;
	height: 100%;
	overflow-y: auto;
}

.page__content:has(.sc-layout)[b-ct3vrssyiw] {
	padding: 0;
	overflow: hidden;
	min-height: 0;
}

.stock-nav-container[b-ct3vrssyiw]{
	height: 100%;
	border-right: 1px solid #CCC;
	padding: 20px;

	.nav-group{
		background-color: #fff;
		border: 1px solid #CCC;
		margin-bottom: 20px;
		padding: 10px;
		border-radius: 8px;

		.nav-group-title{
			padding: 16px;
		}

		div.nav-button[b-ct3vrssyiw]{
			padding: 6px 18px;
			background-color: #FFF;
			cursor: pointer;
			transition: background-color .2s ease;
			border-radius: 5px;

			&:hover{
				background-color: #FAFAFA;
			}
		}
	}
}
/* /Pages/Secure/Stock/StockModuleMenu.razor.rz.scp.css */
.menu-button[b-hd3ty0szpv]{display:block}@media screen and (min-width: 800px){.menu-button[b-hd3ty0szpv]{display:none}}.nav-buttons[b-hd3ty0szpv]{display:flex;gap:5px}.nav-buttons .nav-button[b-hd3ty0szpv]{display:none}@media screen and (min-width: 800px){.nav-buttons .nav-button[b-hd3ty0szpv]{display:block}}
