::after,
::before
{
    box-sizing: border-box;
    border-width: 0;
    border-style: solid;
    border-color: #e5e7eb
}

::after,
::before
{
    --tw-content: ''
}

:host,
html
{
    line-height: 1.5;
    -webkit-text-size-adjust: 100%;
    -moz-tab-size: 4;
    tab-size: 4;
    font-feature-settings: normal;
    font-variation-settings: normal;
    -webkit-tap-highlight-color: transparent
}

body
{
    margin: 0;
    line-height: inherit
}

hr
{
    height: 0;
    color: inherit;
    border-top-width: 1px
}

abbr:where([title])
{
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted
}

h1,
h2,
h3,
h4,
h5,
h6
{
    font-size: inherit;
    font-weight: inherit
}

a
{
    color: inherit;
    text-decoration: inherit
}

b,
strong
{
    font-weight: bolder
}

code,
kbd,
pre,
samp
{
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
    font-feature-settings: normal;
    font-variation-settings: normal;
    font-size: 1em
}

small
{
    font-size: 80%
}

sub,
sup
{
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline
}

sub
{
    bottom: -.25em
}

sup
{
    top: -.5em
}

table
{
    text-indent: 0;
    border-color: inherit;
    border-collapse: collapse
}

button,
input,
optgroup,
select,
textarea
{
    font-family: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    font-size: 100%;
    font-weight: inherit;
    line-height: inherit;
    color: inherit;
    margin: 0;
    padding: 0
}

button,
select
{
    text-transform: none
}

[type=button],
[type=reset],
[type=submit],
button
{
    -webkit-appearance: button;
    background-color: transparent;
    background-image: none
}

:-moz-focusring
{
    outline: auto
}

:-moz-ui-invalid
{
    box-shadow: none
}

progress
{
    vertical-align: baseline
}

::-webkit-inner-spin-button,
::-webkit-outer-spin-button
{
    height: auto
}

[type=search]
{
    -webkit-appearance: textfield;
    outline-offset: -2px
}

::-webkit-search-decoration
{
    -webkit-appearance: none
}

::-webkit-file-upload-button
{
    -webkit-appearance: button;
    font: inherit
}

summary
{
    display: list-item
}

blockquote,
dd,
dl,
figure,
h1,
h2,
h3,
h4,
h5,
h6,
hr,
p,
pre
{
    margin: 0
}

fieldset
{
    margin: 0;
    padding: 0
}

legend
{
    padding: 0
}

menu,
ol,
ul
{
    list-style: none;
    margin: 0;
    padding: 0
}

dialog
{
    padding: 0
}

textarea
{
    resize: vertical
}

input::placeholder,
textarea::placeholder
{
    opacity: 1;
    color: #9ca3af
}

[role=button],
button
{
    cursor: pointer
}

:disabled
{
    cursor: default
}

audio,
canvas,
embed,
iframe,
img,
object,
svg,
video
{
    display: block;
    vertical-align: middle
}

img,
video
{
    max-width: 100%;
    height: auto
}

[hidden]
{
    display: none
}

*,
::before,
::after
{
    --tw-border-spacing-x: 0;
    --tw-border-spacing-y: 0;
    --tw-translate-x: 0;
    --tw-translate-y: 0;
    --tw-rotate: 0;
    --tw-skew-x: 0;
    --tw-skew-y: 0;
    --tw-scale-x: 1;
    --tw-scale-y: 1;
    --tw-pan-x:;
    --tw-pan-y:;
    --tw-pinch-zoom:;
    --tw-scroll-snap-strictness: proximity;
    --tw-gradient-from-position:;
    --tw-gradient-via-position:;
    --tw-gradient-to-position:;
    --tw-ordinal:;
    --tw-slashed-zero:;
    --tw-numeric-figure:;
    --tw-numeric-spacing:;
    --tw-numeric-fraction:;
    --tw-ring-inset:;
    --tw-ring-offset-width: 0px;
    --tw-ring-offset-color: #fff;
    --tw-ring-color: rgb(59 130 246 / 0.5);
    --tw-ring-offset-shadow: 0 0 #0000;
    --tw-ring-shadow: 0 0 #0000;
    --tw-shadow: 0 0 #0000;
    --tw-shadow-colored: 0 0 #0000;
    --tw-blur:;
    --tw-brightness:;
    --tw-contrast:;
    --tw-grayscale:;
    --tw-hue-rotate:;
    --tw-invert:;
    --tw-saturate:;
    --tw-sepia:;
    --tw-drop-shadow:;
    --tw-backdrop-blur:;
    --tw-backdrop-brightness:;
    --tw-backdrop-contrast:;
    --tw-backdrop-grayscale:;
    --tw-backdrop-hue-rotate:;
    --tw-backdrop-invert:;
    --tw-backdrop-opacity:;
    --tw-backdrop-saturate:;
    --tw-backdrop-sepia:
}

::backdrop
{
    --tw-border-spacing-x: 0;
    --tw-border-spacing-y: 0;
    --tw-translate-x: 0;
    --tw-translate-y: 0;
    --tw-rotate: 0;
    --tw-skew-x: 0;
    --tw-skew-y: 0;
    --tw-scale-x: 1;
    --tw-scale-y: 1;
    --tw-pan-x:;
    --tw-pan-y:;
    --tw-pinch-zoom:;
    --tw-scroll-snap-strictness: proximity;
    --tw-gradient-from-position:;
    --tw-gradient-via-position:;
    --tw-gradient-to-position:;
    --tw-ordinal:;
    --tw-slashed-zero:;
    --tw-numeric-figure:;
    --tw-numeric-spacing:;
    --tw-numeric-fraction:;
    --tw-ring-inset:;
    --tw-ring-offset-width: 0px;
    --tw-ring-offset-color: #fff;
    --tw-ring-color: rgb(59 130 246 / 0.5);
    --tw-ring-offset-shadow: 0 0 #0000;
    --tw-ring-shadow: 0 0 #0000;
    --tw-shadow: 0 0 #0000;
    --tw-shadow-colored: 0 0 #0000;
    --tw-blur:;
    --tw-brightness:;
    --tw-contrast:;
    --tw-grayscale:;
    --tw-hue-rotate:;
    --tw-invert:;
    --tw-saturate:;
    --tw-sepia:;
    --tw-drop-shadow:;
    --tw-backdrop-blur:;
    --tw-backdrop-brightness:;
    --tw-backdrop-contrast:;
    --tw-backdrop-grayscale:;
    --tw-backdrop-hue-rotate:;
    --tw-backdrop-invert:;
    --tw-backdrop-opacity:;
    --tw-backdrop-saturate:;
    --tw-backdrop-sepia:
}

.m-2
{
    margin: 0.5rem
}

.m-auto
{
    margin: auto
}

.my-6
{
    margin-top: 1.5rem;
    margin-bottom: 1.5rem
}

.my-auto
{
    margin-top: auto;
    margin-bottom: auto
}

.flex
{
    display: flex;
}

.h-16
{
    height: 4rem
}

.w-16
{
    width: 4rem;
}

.flex-row
{
    flex-direction: row
}

.flex-col
{
    flex-direction: column
}

.justify-start
{
    justify-content: flex-start
}

.justify-center
{
    justify-content: center
}

.gap-0
{
    gap: 0px
}

.gap-1
{
    gap: 0.25rem
}

.gap-2
{
    gap: 0.5rem
}

.rounded-lg
{
    border-radius: 0.5rem
}

.bg-\[--mud-palette-info\]
{
    background-color: var(--mud-palette-info)
}

.bg-\[--mud-palette-primary\]
{
    background-color: var(--mud-palette-primary)
}

.bg-\[--mud-palette-secondary\]
{
    background-color: var(--mud-palette-secondary)
}

.bg-\[--mud-palette-tertiary\]
{
    background-color: var(--mud-palette-tertiary)
}

.p-4
{
    padding: 1rem
}

.py-4
{
    padding-top: 1rem;
    padding-bottom: 1rem
}

.text-2xl
{
    font-size: 1.2rem;
    line-height: 2rem
}

.font-medium
{
    font-weight: 500
}

.text-white
{
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity))
}

.opacity-50
{
    opacity: 0.5
}

:is(.dark .dark\:text-gray-200)
{
    --tw-text-opacity: 1;
    color: rgb(229 231 235 / var(--tw-text-opacity))
}

.mud-button-root
{
    border-radius: 2px; /* Mais próximo do estilo do Ant Design */
}

.mud-input-input
{
    border-radius: 2px;
}

.mud-elevation-0
{
    box-shadow: none !important;
}

.mud-elevation-1
{
    /*box-shadow: 0 2px 4px rgba(0,0,0,0.10) !important;*/
    box-shadow: none !important;
    border: 1px solid #f0f0f0;
}

.mud-elevation-2
{
    box-shadow: 0 3px 6px rgba(0,0,0,0.10) !important;
}

.mud-elevation-3,
.mud-elevation-4,
.mud-elevation-6,
.mud-elevation-8,
.mud-elevation-12,
.mud-elevation-16,
.mud-elevation-24
{
    box-shadow: 0 4px 8px rgba(0,0,0,0.10) !important;
}

.mud-table-head
{
    position: relative;
    color: rgba(0, 0, 0, 0.85);
    font-weight: 500;
    text-align: left;
    background: #fafafa;
    border-bottom: 1px solid #f0f0f0;
    transition: background 0.3s ease;
}

.break-word
{
    word-break: break-word;
    overflow-wrap: break-word;
}

.mud-breadcrumb-item.mud-disabled > a
{
    color: var(--mud-palette-text-primary) !important;
}

.loading-progress
{
    display: block;
    width: 8rem;
    height: 8rem;
    margin: 1rem auto 1rem auto;
}

.loading-progress circle
{
    fill: none;
    stroke: #e0e0e0;
    stroke-width: 0.6rem;
    transform-origin: 50% 50%;
    transform: rotate(-90deg);
}

.loading-progress circle:last-child
{
    stroke: rgba(58,193,248,1);
    stroke-dasharray: calc(3.141 * var(--blazor-load-percentage, 0%) * 0.8), 500%;
    transition: stroke-dasharray 0.05s ease-in-out;
}

.loading-progress-text, .loading-progress-loading-text
{
    position: relative;
    text-align: center;
    font-weight: bold;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Fira Sans", "Droid Sans", "Helvetica Neue", "sans-serif";
}

.loading-progress-text:after
{
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Fira Sans", "Droid Sans", "Helvetica Neue", "sans-serif";
    content: var(--blazor-load-percentage-text, "");
}

/* Usado para o MudTransferList */
.d-flex.flex-row.gap-4 > div:first-child {
    width: 100%;
}

/* Usado para o MudTransferList */
.d-flex.flex-column.gap-1.align-center.justify-center + div {
    width: 100%;
}

@media (min-width: 960px) {
    .mimic-md-4-xs-12 {
        flex-grow: 0;
        max-width: 33.333333%; /* 33.33% para o md (médio) */
        flex-basis: 33.333333%; /* Igualando ao grid de 4 colunas */
    }
}

@media (max-width: 959.98px) {
    .mimic-md-4-xs-12 {
        flex-grow: 0;
        max-width: 100%; /* 100% para xs (pequeno) */
        flex-basis: 100%;
    }
}