:root {
  color-scheme: dark;
  --portal-bg-raised: color-mix(in srgb, var(--mud-palette-text-primary) 3%, var(--mud-palette-surface));
  --portal-bg-elevated: color-mix(in srgb, var(--mud-palette-text-primary) 6%, var(--mud-palette-surface));
  --portal-bg-overlay: color-mix(in srgb, var(--mud-palette-text-primary) 10%, var(--mud-palette-surface));
  --portal-bg-overlay-hover: color-mix(in srgb, var(--mud-palette-text-primary) 14%, var(--mud-palette-surface));
  --portal-sidebar: var(--mud-palette-drawer-background);
  --portal-inset: var(--mud-palette-background-gray);
  --portal-subtle: color-mix(in srgb, var(--mud-palette-primary) 10%, var(--mud-palette-surface));
  --portal-accent: var(--mud-palette-primary);
  --portal-accent-hover: var(--mud-palette-primary-darken);
  --portal-green: var(--mud-palette-success);
  --portal-green-bg: rgba(var(--mud-palette-success-rgb), 0.12);
  --portal-amber: var(--mud-palette-warning);
  --portal-amber-bg: rgba(var(--mud-palette-warning-rgb), 0.12);
  --portal-red: var(--mud-palette-error);
  --portal-red-bg: rgba(var(--mud-palette-error-rgb), 0.12);
  --portal-blue: var(--mud-palette-info);
  --portal-blue-bg: rgba(var(--mud-palette-info-rgb), 0.12);
  --portal-glass-bg: rgba(var(--mud-palette-surface-rgb), 0.88);
  --portal-shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.24), 0 1px 2px rgba(0, 0, 0, 0.16);
  --portal-shadow-md: 0 4px 6px rgba(0, 0, 0, 0.24), 0 2px 4px rgba(0, 0, 0, 0.16);
  --portal-shadow-lg: 0 12px 48px rgba(0, 0, 0, 0.33);
  --portal-radius-sm: 6px;
  --portal-radius-md: 8px;
  --portal-radius-lg: 10px;
  --portal-radius-xl: 16px;
  --portal-transition-fast: 150ms cubic-bezier(0.4, 0, 0.2, 1);
  --portal-transition-normal: 250ms cubic-bezier(0.4, 0, 0.2, 1);
}

:root[data-theme=light] {
  color-scheme: light;
  --portal-shadow-sm: 0 1px 2px rgba(11, 34, 36, 0.06);
  --portal-shadow-md: 0 4px 12px rgba(11, 34, 36, 0.08);
  --portal-shadow-lg: 0 12px 48px rgba(11, 34, 36, 0.1);
}

*::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}

*::-webkit-scrollbar-track {
  background: transparent;
}

*::-webkit-scrollbar-thumb {
  background: rgba(var(--mud-palette-primary-rgb), 0.2);
  border-radius: 4px;
  border: 2px solid transparent;
  background-clip: content-box;
}
*::-webkit-scrollbar-thumb:hover {
  background: rgba(var(--mud-palette-primary-rgb), 0.35);
  background-clip: content-box;
}

* {
  scrollbar-width: thin;
  scrollbar-color: rgba(var(--mud-palette-primary-rgb), 0.2) transparent;
}

.mud-typography-h4,
.mud-typography-h5,
.mud-typography-h6 {
  color: var(--mud-palette-text-primary) !important;
  letter-spacing: 0.01em;
}

.mud-typography-h5 {
  font-weight: 600 !important;
}

.mud-typography-body1 {
  color: var(--mud-palette-text-secondary);
  line-height: 1.7;
}

.mud-typography-body2 {
  color: var(--mud-palette-text-secondary);
}

.mud-typography-button {
  letter-spacing: 0.04em;
}

.mud-link {
  color: var(--mud-palette-primary) !important;
  text-decoration: none !important;
  transition: color 150ms cubic-bezier(0.4, 0, 0.2, 1), opacity 150ms cubic-bezier(0.4, 0, 0.2, 1) !important;
}
.mud-link:hover {
  color: var(--portal-accent-hover) !important;
}
.mud-link.mud-link-underline-none {
  text-decoration: none !important;
}

.mud-primary-text {
  color: var(--mud-palette-primary) !important;
}

.mud-divider {
  border-color: var(--mud-palette-divider) !important;
}

.mud-appbar.admin-appbar {
  background: var(--mud-palette-surface) !important;
  color: var(--mud-palette-text-primary) !important;
  border-bottom: 1px solid var(--mud-palette-divider) !important;
  box-shadow: none !important;
}
.mud-appbar.admin-appbar .mud-icon-button {
  color: var(--mud-palette-text-secondary);
}
.mud-appbar.admin-appbar .mud-icon-button:hover {
  color: var(--portal-accent);
  background-color: var(--portal-subtle);
}

.admin-appbar-title {
  font-size: 13px;
  color: var(--mud-palette-text-secondary);
}

.admin-appbar-divider {
  width: 1px;
  height: 28px;
  background: var(--mud-palette-divider);
}

.admin-identity {
  font-size: 12px;
  font-weight: 600;
  color: var(--mud-palette-text-primary);
  line-height: 1.3;
}
.admin-identity small {
  display: block;
  color: var(--mud-palette-text-secondary);
  font-size: 10px;
  font-weight: 400;
}

.mud-drawer.admin-drawer {
  background: var(--portal-sidebar) !important;
  border-right: 1px solid var(--mud-palette-divider) !important;
  box-shadow: none !important;
}
.mud-drawer.admin-drawer .mud-drawer-content {
  display: flex;
  flex-direction: column;
}

.admin-brand {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 20px 20px 22px;
  color: var(--mud-palette-text-primary) !important;
  text-decoration: none !important;
}
.admin-brand img {
  width: auto;
  height: 36px;
  border-radius: 8px;
}
.admin-brand .logo-light {
  display: none;
}
:root[data-theme=light] .admin-brand .logo-light {
  display: block;
}
:root[data-theme=light] .admin-brand .logo-dark {
  display: none;
}
.admin-brand strong {
  display: block;
  font-size: 22px;
  font-weight: 700;
  letter-spacing: -0.6px;
  line-height: 1.1;
}
.admin-brand small {
  display: block;
  margin-top: 2px;
  color: var(--mud-palette-text-secondary);
  font-size: 11px;
}

.admin-brand-dot {
  color: var(--portal-accent);
}

.admin-nav-caption {
  color: var(--mud-palette-text-secondary);
  font-size: 11px;
  padding: 22px 12px 10px;
}

.mud-navmenu.admin-nav {
  padding: 0 12px 20px !important;
}
.mud-navmenu.admin-nav .mud-nav-link {
  min-height: 42px;
  margin: 0 0 3px;
  padding: 10px 12px !important;
  border-radius: 7px !important;
  color: var(--mud-palette-text-secondary) !important;
  transition: background-color 150ms cubic-bezier(0.4, 0, 0.2, 1), color 150ms cubic-bezier(0.4, 0, 0.2, 1) !important;
}
.mud-navmenu.admin-nav .mud-nav-link .mud-nav-link-icon {
  color: inherit !important;
  margin-inline-end: 12px;
}
.mud-navmenu.admin-nav .mud-nav-link .mud-nav-link-text {
  margin-inline-start: 0;
  font-size: 14px;
  font-weight: 400;
}
.mud-navmenu.admin-nav .mud-nav-link:hover {
  background-color: var(--portal-inset) !important;
  color: var(--mud-palette-text-primary) !important;
}
.mud-navmenu.admin-nav .mud-nav-link.active {
  background-color: var(--portal-subtle) !important;
  color: var(--portal-accent) !important;
}
.mud-navmenu.admin-nav .mud-nav-link.active .mud-nav-link-text {
  font-weight: 600;
}
.mud-navmenu.admin-nav .mud-nav-group > .mud-nav-link .mud-nav-link-text {
  font-weight: 400;
}
.mud-navmenu.admin-nav .mud-nav-group .mud-navmenu {
  margin: 2px 0 9px 21px;
  padding-left: 14px;
  border-left: 1px solid var(--mud-palette-divider);
}
.mud-navmenu.admin-nav .mud-nav-group .mud-navmenu .mud-nav-link {
  min-height: 35px;
  padding: 8px 12px !important;
}

.admin-drawer-footer {
  margin-top: auto;
  padding: 16px 12px;
  border-top: 1px solid var(--mud-palette-divider);
}

.mud-button-root {
  border-radius: 8px !important;
  text-transform: none !important;
  font-weight: 600 !important;
  letter-spacing: 0;
  transition: background-color 150ms cubic-bezier(0.4, 0, 0.2, 1), border-color 150ms cubic-bezier(0.4, 0, 0.2, 1), color 150ms cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.mud-button.mud-button-root:not(.mud-icon-button) {
  min-height: 40px;
  white-space: nowrap;
}

.mud-button-filled {
  box-shadow: none !important;
}
.mud-button-filled.mud-button-filled-primary:hover {
  background-color: var(--mud-palette-primary-darken) !important;
}
.mud-button-filled.mud-button-filled-secondary {
  background: var(--portal-bg-overlay) !important;
  color: var(--mud-palette-text-primary) !important;
}
.mud-button-filled.mud-button-filled-secondary:hover {
  background: var(--portal-bg-overlay-hover) !important;
}

.mud-button-text:hover {
  background-color: rgba(var(--mud-palette-primary-rgb), 0.08) !important;
}
.mud-button-text.mud-button-text-primary {
  color: var(--portal-accent) !important;
}

.mud-button-outlined {
  border-width: 1px !important;
  border-color: var(--mud-palette-lines-default) !important;
}
.mud-button-outlined:hover {
  background-color: rgba(var(--mud-palette-primary-rgb), 0.06) !important;
}
.mud-button-outlined.mud-button-outlined-primary {
  border-color: rgba(var(--mud-palette-primary-rgb), 0.5) !important;
  color: var(--portal-accent) !important;
}
.mud-button-outlined.mud-button-outlined-primary:hover {
  border-color: var(--mud-palette-primary) !important;
}

.mud-icon-button {
  border-radius: 8px !important;
}
.mud-icon-button:hover {
  background-color: var(--portal-subtle) !important;
}

.mud-chip .mud-chip-close-button.mud-icon-button {
  border-radius: 50% !important;
}
.mud-chip .mud-chip-close-button.mud-icon-button:hover {
  background-color: color-mix(in srgb, currentColor 25%, transparent) !important;
}

.mud-fab {
  border-radius: 10px !important;
  box-shadow: var(--portal-shadow-md) !important;
}

.mud-button-group-root {
  border-radius: 8px !important;
  overflow: hidden;
}
.mud-button-group-root .mud-button-root {
  border-radius: 0 !important;
}

.mud-button-text:disabled, .mud-button-text.mud-disabled,
.mud-button-outlined:disabled,
.mud-button-outlined.mud-disabled {
  color: var(--mud-palette-text-disabled) !important;
  background-color: transparent !important;
}

.mud-button-outlined:disabled, .mud-button-outlined.mud-disabled {
  border-color: var(--mud-palette-divider) !important;
}

.mud-table,
.mud-datagrid {
  background: transparent !important;
}
.mud-table .mud-table-container,
.mud-datagrid .mud-table-container {
  background: transparent !important;
}
.mud-table .mud-table-head .mud-table-cell,
.mud-datagrid .mud-table-head .mud-table-cell {
  background: var(--portal-inset) !important;
  color: var(--mud-palette-text-secondary) !important;
  font-weight: 600 !important;
  font-size: 11px !important;
  border-bottom: 1px solid var(--mud-palette-divider) !important;
}
.mud-table .mud-table-body .mud-table-row,
.mud-datagrid .mud-table-body .mud-table-row {
  transition: background-color 150ms cubic-bezier(0.4, 0, 0.2, 1) !important;
}
.mud-table .mud-table-body .mud-table-cell,
.mud-datagrid .mud-table-body .mud-table-cell {
  color: var(--mud-palette-text-primary);
  border-bottom: 1px solid var(--mud-palette-divider) !important;
}
.mud-table .mud-table-sort-label,
.mud-datagrid .mud-table-sort-label {
  color: inherit !important;
}
.mud-table .mud-table-sort-label:hover,
.mud-datagrid .mud-table-sort-label:hover {
  color: var(--portal-accent) !important;
}
.mud-table .mud-table-toolbar,
.mud-datagrid .mud-table-toolbar {
  background: transparent !important;
}
.mud-table .mud-table-pagination,
.mud-datagrid .mud-table-pagination {
  background: transparent !important;
  color: var(--mud-palette-text-secondary) !important;
}

.mud-skeleton {
  background-color: rgba(var(--mud-palette-primary-rgb), 0.08) !important;
}

.mud-input {
  transition: all 150ms cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.mud-input-control .mud-input.mud-input-underline::before {
  border-bottom-color: var(--mud-palette-lines-default) !important;
}
.mud-input-control .mud-input.mud-input-underline::after {
  border-bottom-color: var(--mud-palette-primary) !important;
}
.mud-input-control .mud-input.mud-input-underline:hover::before {
  border-bottom-color: var(--mud-palette-lines-inputs) !important;
}
.mud-input-control .mud-input-outlined .mud-input-outlined-border {
  border-color: var(--mud-palette-lines-default) !important;
  border-radius: 8px !important;
  transition: border-color 150ms cubic-bezier(0.4, 0, 0.2, 1) !important;
}
.mud-input-control .mud-input-outlined:hover .mud-input-outlined-border {
  border-color: var(--mud-palette-lines-inputs) !important;
}
.mud-input-control .mud-input-outlined.mud-input-focused .mud-input-outlined-border {
  border-color: var(--mud-palette-primary) !important;
  border-width: 2px !important;
  box-shadow: 0 0 0 3px rgba(var(--mud-palette-primary-rgb), 0.1);
}
.mud-input-control .mud-input-label {
  color: var(--mud-palette-text-secondary) !important;
  transition: color 150ms cubic-bezier(0.4, 0, 0.2, 1) !important;
}
.mud-input-control .mud-input-label-inputcontrol.mud-input-label-animated.mud-input-label-focused {
  color: var(--mud-palette-primary) !important;
}
.mud-input-control .mud-input-helper-text {
  color: var(--mud-palette-text-disabled) !important;
}
.mud-input-control:not(.admin-form-pristine *).mud-input-error .mud-input-outlined-border,
.mud-input-control:not(.admin-form-pristine *) .mud-input.mud-input-error .mud-input-outlined-border {
  border-color: var(--mud-palette-error) !important;
}
.mud-input-control:not(.admin-form-pristine *) .mud-input.mud-input-error.mud-input-underline::after, .mud-input-control:not(.admin-form-pristine *).mud-input-error .mud-input-underline::after {
  border-bottom-color: var(--mud-palette-error) !important;
}
.mud-input-control:not(.admin-form-pristine *) .mud-input-label.mud-input-error, .mud-input-control:not(.admin-form-pristine *).mud-input-error .mud-input-label {
  color: var(--mud-palette-error) !important;
}
.mud-input-control:not(.admin-form-pristine *) .mud-input-helper-text.mud-input-error {
  color: var(--mud-palette-error) !important;
}

.admin-form-pristine .mud-input-helper-text.mud-input-error {
  visibility: hidden;
}

.mud-input > input,
.mud-input > textarea {
  color: var(--mud-palette-text-primary) !important;
  caret-color: var(--mud-palette-primary) !important;
}

.mud-input-adornment .mud-icon-root {
  color: var(--mud-palette-text-secondary) !important;
  transition: color 150ms cubic-bezier(0.4, 0, 0.2, 1);
}
.mud-input-adornment:hover .mud-icon-root {
  color: var(--mud-palette-primary) !important;
}

.mud-select .mud-input-slot {
  color: var(--mud-palette-text-primary) !important;
}

.mud-popover.mud-select-popover,
.mud-popover.mud-autocomplete-popover {
  background: var(--portal-glass-bg);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border: 1px solid var(--mud-palette-divider);
  border-radius: 8px !important;
  box-shadow: var(--portal-shadow-lg) !important;
  margin-top: 4px;
}
.mud-popover.mud-select-popover .mud-list,
.mud-popover.mud-autocomplete-popover .mud-list {
  background: transparent !important;
  padding: 4px !important;
}
.mud-popover.mud-select-popover .mud-list-item,
.mud-popover.mud-autocomplete-popover .mud-list-item {
  border-radius: 6px !important;
  margin: 1px 0;
  color: var(--mud-palette-text-primary) !important;
  transition: all 150ms cubic-bezier(0.4, 0, 0.2, 1) !important;
}
.mud-popover.mud-select-popover .mud-list-item:hover,
.mud-popover.mud-autocomplete-popover .mud-list-item:hover {
  background-color: rgba(var(--mud-palette-primary-rgb), 0.1) !important;
}
.mud-popover.mud-select-popover .mud-list-item.mud-selected-item,
.mud-popover.mud-autocomplete-popover .mud-list-item.mud-selected-item {
  background-color: rgba(var(--mud-palette-primary-rgb), 0.15) !important;
  color: var(--mud-palette-primary) !important;
}

.mud-file-upload .mud-button-root {
  border-style: dashed !important;
  border-color: var(--mud-palette-lines-default) !important;
  transition: all 250ms cubic-bezier(0.4, 0, 0.2, 1) !important;
}
.mud-file-upload .mud-button-root:hover {
  border-color: var(--mud-palette-primary) !important;
  background: rgba(var(--mud-palette-primary-rgb), 0.05) !important;
}

.mud-table-toolbar .mud-input-control {
  max-width: 320px;
}
.mud-table-toolbar .mud-input-control .mud-input.mud-input-underline::before {
  border-bottom-color: var(--mud-palette-divider) !important;
}

.mud-paper {
  border-radius: 10px !important;
}
.mud-paper:not(.mud-elevation-0):not(.mud-popover):not(.mud-dialog) {
  background: var(--mud-palette-surface) !important;
  border: 1px solid var(--mud-palette-divider);
  box-shadow: none !important;
}
.mud-paper.mud-paper-outlined {
  background: var(--mud-palette-surface);
  border: 1px solid var(--mud-palette-divider) !important;
}

.mud-popover {
  border: 1px solid var(--mud-palette-divider);
  box-shadow: var(--portal-shadow-lg) !important;
}

.mud-main-content {
  background: var(--mud-palette-background);
  min-height: 100vh;
}

.mud-tabs .mud-tabs-tabbar {
  background: transparent !important;
  border-bottom: 1px solid var(--mud-palette-divider) !important;
  border-radius: 0 !important;
}
.mud-tabs .mud-tab {
  color: var(--mud-palette-text-secondary) !important;
  font-weight: 500;
  text-transform: none !important;
  letter-spacing: 0;
  min-width: 0;
}
.mud-tabs .mud-tab:hover {
  color: var(--mud-palette-text-primary) !important;
  background: rgba(var(--mud-palette-primary-rgb), 0.06) !important;
}
.mud-tabs .mud-tab.mud-tab-active {
  color: var(--portal-accent) !important;
  font-weight: 600;
}
.mud-tabs .mud-tab-slider {
  background: var(--portal-accent) !important;
}

.mud-overlay.mud-overlay-dialog {
  background-color: rgba(0, 0, 0, 0.6) !important;
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
}

.blur-class {
  backdrop-filter: blur(8px) !important;
  -webkit-backdrop-filter: blur(8px) !important;
  background-color: rgba(0, 0, 0, 0.5) !important;
}

.mud-dialog {
  background: var(--portal-glass-bg);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border: 1px solid var(--mud-palette-divider);
  background: var(--portal-bg-elevated) !important;
  border-radius: 16px !important;
  box-shadow: var(--portal-shadow-lg), 0 0 10px rgba(var(--mud-palette-primary-rgb), 0.12) !important;
  border: 1px solid var(--mud-palette-lines-default) !important;
}
.mud-dialog .mud-dialog-title {
  color: var(--mud-palette-text-primary) !important;
  font-weight: 600;
  padding: 20px 24px 12px !important;
  border-bottom: 1px solid var(--mud-palette-divider);
}
.mud-dialog .mud-dialog-content {
  padding: 20px 24px !important;
  color: var(--mud-palette-text-primary);
}
.mud-dialog .mud-dialog-actions {
  padding: 12px 24px 20px !important;
  border-top: 1px solid var(--mud-palette-divider);
  gap: 8px;
}
.mud-dialog .mud-button-close {
  color: var(--mud-palette-text-secondary) !important;
  transition: color 150ms cubic-bezier(0.4, 0, 0.2, 1) !important;
}
.mud-dialog .mud-button-close:hover {
  color: var(--mud-palette-text-primary) !important;
  background-color: rgba(var(--mud-palette-primary-rgb), 0.1) !important;
}

.mud-drop-zone {
  border-color: var(--mud-palette-lines-default) !important;
  border-radius: 10px !important;
  background: rgba(var(--mud-palette-primary-rgb), 0.03) !important;
  transition: all 250ms cubic-bezier(0.4, 0, 0.2, 1) !important;
}
.mud-drop-zone:hover {
  border-color: var(--mud-palette-primary) !important;
  background: rgba(var(--mud-palette-primary-rgb), 0.06) !important;
}

.mud-dialog.admin-confirm .admin-confirm-content {
  padding: 24px 24px 8px !important;
}
.mud-dialog.admin-confirm .admin-confirm-actions {
  padding: 16px 24px 20px !important;
  border-top: 0;
}

.admin-confirm-icon {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: var(--portal-subtle);
  color: var(--portal-accent);
}
.admin-confirm-icon.is-danger {
  background: var(--portal-red-bg);
  color: var(--portal-red);
}

.admin-confirm-title {
  margin: 0;
  color: var(--mud-palette-text-primary);
  font-size: 18px;
  font-weight: 650;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.admin-confirm-text {
  margin: 8px 0 0;
  color: var(--mud-palette-text-secondary);
  font-size: 14px;
  line-height: 1.5;
}

.mud-breadcrumbs {
  padding: 12px 0 !important;
}
.mud-breadcrumbs .mud-breadcrumb-item {
  color: var(--mud-palette-text-secondary) !important;
  font-size: 0.8125rem;
  transition: color 150ms cubic-bezier(0.4, 0, 0.2, 1);
}
.mud-breadcrumbs .mud-breadcrumb-item a {
  color: var(--mud-palette-text-secondary) !important;
  text-decoration: none !important;
  transition: color 150ms cubic-bezier(0.4, 0, 0.2, 1) !important;
}
.mud-breadcrumbs .mud-breadcrumb-item a:hover {
  color: var(--mud-palette-primary) !important;
}
.mud-breadcrumbs .mud-breadcrumb-item:last-child {
  color: var(--mud-palette-text-disabled) !important;
}
.mud-breadcrumbs .mud-breadcrumb-separator {
  color: var(--mud-palette-text-disabled) !important;
}
.mud-breadcrumbs li .mud-typography {
  font-size: 0.8125rem;
}

.mud-snackbar {
  background: var(--mud-palette-surface) !important;
  border: 1px solid var(--mud-palette-divider);
  border-radius: 10px !important;
  box-shadow: var(--portal-shadow-lg) !important;
}
.mud-snackbar .mud-snackbar-content-message {
  color: var(--mud-palette-text-primary) !important;
  font-weight: 500;
}
.mud-snackbar.mud-alert-outlined-success {
  border-color: color-mix(in srgb, var(--portal-green) 35%, transparent) !important;
  background: var(--portal-green-bg) !important;
}
.mud-snackbar.mud-alert-outlined-success .mud-snackbar-content-message,
.mud-snackbar.mud-alert-outlined-success .mud-alert-icon {
  color: var(--portal-green) !important;
}
.mud-snackbar.mud-alert-outlined-error {
  border-color: color-mix(in srgb, var(--portal-red) 35%, transparent) !important;
  background: var(--portal-red-bg) !important;
}
.mud-snackbar.mud-alert-outlined-error .mud-snackbar-content-message,
.mud-snackbar.mud-alert-outlined-error .mud-alert-icon {
  color: var(--portal-red) !important;
}
.mud-snackbar.mud-alert-outlined-warning {
  border-color: color-mix(in srgb, var(--portal-amber) 35%, transparent) !important;
  background: var(--portal-amber-bg) !important;
}
.mud-snackbar.mud-alert-outlined-warning .mud-snackbar-content-message,
.mud-snackbar.mud-alert-outlined-warning .mud-alert-icon {
  color: var(--portal-amber) !important;
}
.mud-snackbar.mud-alert-outlined-info {
  border-color: color-mix(in srgb, var(--portal-blue) 35%, transparent) !important;
  background: var(--portal-blue-bg) !important;
}
.mud-snackbar.mud-alert-outlined-info .mud-snackbar-content-message,
.mud-snackbar.mud-alert-outlined-info .mud-alert-icon {
  color: var(--portal-blue) !important;
}
.mud-snackbar .mud-snackbar-close-button {
  color: var(--mud-palette-text-secondary) !important;
}
.mud-snackbar .mud-snackbar-close-button:hover {
  color: var(--mud-palette-text-primary) !important;
}

.admin-main {
  max-width: 1536px;
  padding: 28px 36px 40px !important;
}

.admin-crumbs.mud-breadcrumbs {
  padding: 0 !important;
  margin-bottom: 24px;
  font-size: 12px;
}
.admin-crumbs.mud-breadcrumbs .mud-breadcrumb-item,
.admin-crumbs.mud-breadcrumbs .mud-breadcrumb-item a,
.admin-crumbs.mud-breadcrumbs .mud-breadcrumb-item.mud-disabled,
.admin-crumbs.mud-breadcrumbs .mud-breadcrumb-item.mud-disabled a {
  color: var(--mud-palette-text-secondary) !important;
  font-size: 12px;
}
.admin-crumbs.mud-breadcrumbs .mud-breadcrumb-item a:hover {
  color: var(--portal-accent) !important;
}
.admin-crumbs.mud-breadcrumbs .mud-breadcrumb-separator {
  color: var(--mud-palette-text-secondary) !important;
}
.admin-crumbs.mud-breadcrumbs .mud-breadcrumb-separator .mud-icon-root {
  font-size: 14px;
}

.admin-heading {
  margin-bottom: 28px;
}

@media (max-width: 599.98px) {
  .admin-heading-actions {
    width: 100%;
  }
  .admin-heading-actions > .mud-button-root {
    flex: 1 1 auto;
  }
}
.admin-eyebrow {
  color: var(--portal-accent);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  margin-bottom: 12px;
}

.admin-title {
  margin: 0;
  color: var(--mud-palette-text-primary);
  font-size: 30px;
  font-weight: 650;
  line-height: 1.25;
  letter-spacing: -0.8px;
  overflow-wrap: anywhere;
}

.admin-subtitle {
  margin: 10px 0 0;
  color: var(--mud-palette-text-secondary);
}

.admin-count.mud-chip {
  height: 24px;
  margin: 0;
  padding: 0 8px;
  border-radius: 6px;
  background: var(--portal-subtle) !important;
  color: var(--portal-accent) !important;
  font-size: 12px;
  font-weight: 600;
}

.admin-section-title {
  margin: 0;
  color: var(--mud-palette-text-primary);
  font-size: 18px;
  font-weight: 600;
  letter-spacing: -0.25px;
}

.admin-muted {
  color: var(--mud-palette-text-secondary);
}

.admin-home-title {
  margin: 0;
  color: var(--mud-palette-text-primary);
  font-size: 36px;
  font-weight: 650;
  letter-spacing: -1px;
  line-height: 1.2;
}

.admin-quick-card.mud-paper {
  display: flex;
  flex-direction: column;
  height: 100%;
  min-height: 170px;
  padding: 22px;
  color: inherit;
  text-decoration: none;
  transition: border-color 150ms cubic-bezier(0.4, 0, 0.2, 1), transform 150ms cubic-bezier(0.4, 0, 0.2, 1) !important;
}
.admin-quick-card.mud-paper:hover {
  border-color: var(--portal-accent) !important;
  transform: translateY(-2px);
}
.admin-quick-card.mud-paper h2 {
  margin: 18px 0 0;
  font-size: 16px;
  font-weight: 600;
}
.admin-quick-card.mud-paper p {
  margin: 6px 0 0;
  color: var(--mud-palette-text-secondary);
  font-size: 12px;
  line-height: 1.65;
}

.mud-link.admin-quick-link {
  color: var(--mud-palette-text-primary) !important;
}

.admin-icon-tile {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: 10px;
  background: var(--portal-subtle);
  color: var(--portal-accent);
}

.admin-catalog-group.mud-paper {
  height: 100%;
  padding: 22px;
}
.admin-catalog-group.mud-paper h3 {
  display: flex;
  align-items: center;
  gap: 9px;
  margin: 0 0 16px;
  font-size: 15px;
  font-weight: 600;
  color: var(--mud-palette-text-primary);
}
.admin-catalog-group.mud-paper h3 .mud-icon-root {
  color: var(--mud-palette-text-secondary);
  font-size: 20px;
}

.admin-catalog-link {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 10px 0;
  border-top: 1px solid var(--mud-palette-divider);
  color: var(--mud-palette-text-primary) !important;
  text-decoration: none !important;
}
.admin-catalog-link span {
  flex: 1;
  min-width: 0;
}
.admin-catalog-link small {
  display: block;
  margin-top: 3px;
  color: var(--mud-palette-text-secondary);
  font-size: 11px;
}
.admin-catalog-link .mud-icon-root {
  color: var(--mud-palette-text-secondary);
  font-size: 18px;
}
.admin-catalog-link:hover {
  color: var(--portal-accent) !important;
}
.admin-catalog-link:hover .mud-icon-root {
  color: var(--portal-accent);
}

.admin-list.mud-paper {
  overflow: hidden;
}

.admin-list-toolbar {
  padding: 20px;
  border-bottom: 1px solid var(--mud-palette-divider);
}
.admin-list-toolbar .portal-filter-panel.mud-paper {
  display: grid;
  grid-template-columns: minmax(0, 480px) auto 1fr;
  align-items: center;
  gap: 16px;
  margin: 0;
  padding: 0;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
}
.admin-list-toolbar .portal-filter-search {
  margin: 0;
}
.admin-list-toolbar .portal-filter-toggle.mud-button-root {
  justify-self: start;
  border: 1px solid var(--mud-palette-lines-default);
  padding: 4px 14px;
}
.admin-list-toolbar .portal-filter-options,
.admin-list-toolbar .portal-filter-footer {
  grid-column: 1/-1;
  margin: 0;
}
.admin-list-toolbar .portal-filter-options {
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
}

.admin-list-search {
  max-width: 480px;
}

.admin-list-viewbar {
  padding: 8px 20px;
  border-bottom: 1px solid var(--mud-palette-divider);
}

.admin-list-dense {
  min-height: 40px;
  align-items: center;
}

.admin-list .mud-datagrid {
  border: 0 !important;
  border-radius: 0 !important;
}

.admin-list .mud-data-grid .mud-table-cell .column-header {
  justify-content: flex-start;
}
.admin-list .mud-data-grid .mud-table-cell .column-header .sortable-column-header {
  width: auto;
}

.admin-list .mud-table-container {
  position: relative;
}

.admin-list .mud-table-head .mud-table-loading {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  z-index: 3;
  padding: 0;
  border: 0;
}

.admin-list .mud-table-root:has(.mud-table-empty-row) .mud-table-head {
  display: none;
}

@media (max-width: 599.98px) {
  .admin-list .mud-xs-table .mud-table-body .mud-table-row {
    position: relative;
    display: block;
    padding: 10px 0;
    border-bottom: 1px solid var(--mud-palette-divider);
  }
  .admin-list .mud-xs-table .mud-table-body .mud-table-cell {
    padding: 4px 16px;
    border: 0 !important;
  }
  .admin-list .mud-xs-table .admin-cell-main {
    padding-right: 96px;
    font-weight: 600;
  }
  .admin-list .mud-xs-table .admin-cell-main::before {
    content: none;
  }
  .admin-list .mud-xs-table .admin-cell-actions {
    position: absolute;
    top: 8px;
    right: 8px;
    width: auto !important;
    padding: 0 !important;
    border: 0 !important;
  }
  .admin-list .mud-xs-table .admin-cell-actions::before {
    content: none;
  }
  .admin-list .mud-xs-table .admin-hide-xs {
    display: none !important;
  }
}
@media (min-width: 600px) {
  .admin-list .mud-table-root {
    table-layout: fixed;
  }
  .admin-list .mud-table-cell {
    overflow-wrap: anywhere;
  }
}
.admin-cell-secondary {
  display: block;
  margin-top: 3px;
  color: var(--mud-palette-text-secondary);
  font-size: 12px;
}

.admin-empty {
  padding: 48px 16px;
  text-align: center;
}
.admin-empty .mud-icon-root {
  color: var(--mud-palette-text-secondary);
  font-size: 32px;
}
.admin-empty h2 {
  margin: 12px 0 0;
  font-size: 18px;
  font-weight: 600;
  color: var(--mud-palette-text-primary);
}
.admin-empty p {
  margin: 6px 0 16px;
  color: var(--mud-palette-text-secondary);
}

.admin-status {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 3px 8px;
  border-radius: 5px;
  font-size: 11px;
  white-space: nowrap;
}
.admin-status::before {
  content: "";
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: currentColor;
}
.admin-status.is-green {
  color: var(--portal-green);
  background: var(--portal-green-bg);
}
.admin-status.is-amber {
  color: var(--portal-amber);
  background: var(--portal-amber-bg);
}
.admin-status.is-red {
  color: var(--portal-red);
  background: var(--portal-red-bg);
}
.admin-status.is-blue {
  color: var(--portal-blue);
  background: var(--portal-blue-bg);
}

.admin-form.mud-paper {
  padding: 28px;
}

.admin-form-intro {
  margin-bottom: 24px;
}
.admin-form-intro h2 {
  margin: 0;
  font-size: 18px;
  font-weight: 600;
  color: var(--mud-palette-text-primary);
}
.admin-form-intro p {
  margin: 6px 0 0;
  color: var(--mud-palette-text-secondary);
  font-size: 12px;
}

.admin-user-avatar.mud-avatar {
  background: var(--portal-subtle);
  color: var(--portal-accent);
  font-size: 12px;
  font-weight: 600;
}

.admin-user-avatar-large.mud-avatar {
  width: 64px;
  height: 64px;
  font-size: 22px;
}

.admin-user-name {
  font-weight: 600;
  color: var(--mud-palette-text-primary);
}

.admin-scopes.mud-toggle-group {
  border: 0 !important;
  background: transparent !important;
  gap: 4px;
}
.admin-scopes.mud-toggle-group .mud-toggle-item {
  border: 0 !important;
  border-radius: 0 !important;
  border-bottom: 2px solid transparent !important;
  background: transparent !important;
  color: var(--mud-palette-text-secondary) !important;
  padding: 6px 12px;
  min-height: 40px;
}
.admin-scopes.mud-toggle-group .mud-toggle-item.mud-toggle-item-selected {
  color: var(--portal-accent) !important;
  border-bottom-color: var(--portal-accent) !important;
  font-weight: 600;
}
.admin-scopes.mud-toggle-group .mud-toggle-item .mud-icon-root {
  display: none;
}

.admin-form-tabs.mud-paper {
  padding: 0;
}
.admin-form-tabs.mud-paper > .mud-tabs > .mud-tabs-tabbar {
  padding: 0 16px;
}
.admin-form-tabs.mud-paper .mud-tab {
  width: auto;
  padding: 6px 16px;
}
.admin-form-tabs.mud-paper .mud-tabs-panels {
  padding: 4px 28px 28px;
}

@media (max-width: 959.98px) {
  .admin-form-tabs.mud-paper .mud-tabs-scroll-button {
    display: none !important;
  }
  .admin-form-tabs.mud-paper .mud-tabs-tabbar-content {
    white-space: normal;
  }
  .admin-form-tabs.mud-paper .mud-tabs-tabbar-wrapper {
    width: auto;
    flex-wrap: wrap;
    gap: 4px;
    padding: 8px 0;
    transform: none !important;
  }
  .admin-form-tabs.mud-paper .mud-tab-slider {
    display: none;
  }
  .admin-form-tabs.mud-paper .mud-tab {
    min-height: 40px;
    border-radius: 8px;
  }
  .admin-form-tabs.mud-paper .mud-tab.mud-tab-active {
    background: var(--portal-subtle);
  }
}
@media (max-width: 719.98px) {
  .admin-form-tabs.mud-paper .mud-tabs-tabbar-wrapper {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .admin-form-tabs.mud-paper .mud-tab {
    width: 100%;
    padding: 6px 10px;
  }
}
.admin-form-tip {
  padding-top: 20px;
  border-top: 1px solid var(--mud-palette-divider);
  color: var(--mud-palette-text-secondary);
  font-size: 12px;
}

.admin-form-section {
  padding-top: 28px;
  border-top: 1px solid var(--mud-palette-divider);
}

.admin-subsection {
  font-size: 15px;
  font-weight: 600;
  color: var(--mud-palette-text-primary);
}
.admin-subsection small {
  font-size: 12px;
  font-weight: 400;
  margin-left: 6px;
}

.admin-picker {
  width: 280px;
  max-width: 100%;
}

.admin-employments.mud-expansion-panels .mud-expand-panel {
  border-radius: 8px !important;
  margin-bottom: 12px !important;
  background: var(--portal-inset) !important;
}
.admin-employments.mud-expansion-panels .mud-expand-panel-header {
  padding: 14px 16px;
}
.admin-employments.mud-expansion-panels .mud-expand-panel-content {
  padding: 4px 16px 0;
}

.admin-skills {
  list-style: none;
  margin: 0;
  padding: 0;
}
.admin-skills li {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
  padding: 10px 0;
  border-bottom: 1px solid var(--mud-palette-divider);
}

.admin-skill-dot {
  flex: 0 0 auto;
  width: 10px;
  height: 10px;
  border-radius: 50%;
}

.admin-levels.mud-toggle-group .mud-toggle-item {
  font-size: 12px;
  padding: 2px 10px;
}
.admin-levels.mud-toggle-group .mud-toggle-item .mud-icon-root {
  display: none;
}

@media (max-width: 959.98px) {
  .admin-form-tabs.mud-paper .mud-tabs-panels {
    padding: 4px 16px 20px;
  }
}
@media (max-width: 959.98px) {
  .admin-main {
    padding: 20px 16px 32px !important;
  }
  .admin-title {
    font-size: 24px;
  }
  .admin-home-title {
    font-size: 28px;
  }
  .admin-list-toolbar .portal-filter-panel.mud-paper {
    grid-template-columns: minmax(0, 1fr) auto;
  }
  .admin-list-viewbar {
    min-width: 0;
    overflow-x: auto;
  }
  .admin-scopes.mud-toggle-group .mud-toggle-item {
    flex: 0 0 auto;
    white-space: nowrap;
  }
  .admin-form.mud-paper {
    padding: 20px 16px;
  }
}
.admin-fieldset {
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
}

.admin-field-hint {
  margin: 8px 0 0;
  font-size: 12px;
}

html, body {
  background-color: var(--mud-palette-background) !important;
}

.text-center-input input {
  text-align: center !important;
}

.cursor-pointer {
  cursor: pointer;
}

.text-glow {
  text-shadow: 0 0 10px rgba(var(--mud-palette-primary-rgb), 0.25);
}

.glass-card {
  background: var(--portal-glass-bg);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border: 1px solid var(--mud-palette-divider);
  border-radius: 10px;
  padding: 24px;
}

.gradient-border {
  position: relative;
}
.gradient-border::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  padding: 1px;
  background: linear-gradient(135deg, rgba(var(--mud-palette-primary-rgb), 0.3), rgba(var(--mud-palette-tertiary-rgb), 0.1));
  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  pointer-events: none;
}

.fade-in {
  animation: fadeIn 0.3s ease-in-out;
}

@keyframes fadeIn {
  from {
    opacity: 0;
    transform: translateY(8px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
::selection {
  background: rgba(var(--mud-palette-primary-rgb), 0.3);
  color: white;
}

/*# sourceMappingURL=common.css.map */
