.datatable-loading .p-datatable-thead{position:relative}.datatable-loading .p-datatable-thead:after{content:"";background:linear-gradient(90deg, transparent, var(--p-primary-500), transparent);background-repeat:no-repeat;background-size:40% 100%;height:3px;animation:1.2s ease-in-out infinite datatable-loading-slide;position:absolute;bottom:0;left:0;right:0}@keyframes datatable-loading-slide{0%{background-position:-100% 0}to{background-position:200% 0}}.p-datatable-paginator-bottom{box-shadow:none!important;border:none!important}.crud-table .p-paginator{justify-content:flex-end}.crud-table--light .crud-table__view-switcher.p-selectbutton{border:1px solid var(--p-surface-200);background:var(--p-surface-50);border-radius:.625rem}.crud-table--light .crud-table__view-switcher .p-togglebutton{color:var(--p-surface-500);background:0 0;border:none}.crud-table--light .crud-table__view-switcher .p-togglebutton.p-togglebutton-checked{background:var(--p-surface-0);color:var(--p-surface-950)}.crud-table--light .crud-table__add-button.p-button{background:var(--p-primary-500);color:var(--p-surface-0);box-shadow:none;border:none}.crud-table--light .crud-table__add-button.p-button:hover{background:var(--p-primary-600)}html.dark .p-selectbutton{border:1px solid var(--p-surface-700);background:var(--p-surface-900);border-radius:.625rem}html.dark .p-selectbutton .p-togglebutton{color:var(--p-surface-400);background:0 0;border:none}html.dark .p-selectbutton .p-togglebutton.p-togglebutton-checked{background:var(--p-surface-800);color:var(--p-surface-0)}html.dark .crud-table .p-button{border-color:#0000}html.dark .crud-table .p-button.p-button-sm:not(.p-button-text):not(.p-selectbutton-button){background:var(--p-primary-500);color:var(--p-surface-0)}html.dark .crud-table .p-button.p-button-sm:not(.p-button-text):not(.p-selectbutton-button):hover{background:var(--p-primary-600)}html.dark .p-paginator .p-paginator-page,html.dark .p-paginator .p-paginator-next,html.dark .p-paginator .p-paginator-prev,html.dark .p-paginator .p-paginator-first,html.dark .p-paginator .p-paginator-last{color:var(--p-surface-300)!important}.dynamic-hover:hover{cursor:pointer;background-color:var(--row-hover-color,#eff6ff)!important;transition:background-color .3s!important}html.dark .dynamic-hover:hover{background-color:var(--p-surface-800)!important}.login-page{background:var(--lp-page-bg);height:100dvh;color:var(--lp-text);position:fixed;inset:0;overflow:hidden}.login-shell{grid-template-columns:minmax(0,1fr);height:100%;display:grid}.login-art{background:#171717;display:none;overflow:hidden}.login-art__image{-o-object-fit:cover;object-fit:cover;-o-object-position:center center;object-position:center center;width:100%;height:100%}.login-panel{background:var(--lp-panel-bg);grid-template-rows:1fr auto;place-items:center;height:100%;padding:2rem 0 1.25rem;display:grid;position:relative;overflow:hidden}.login-panel:before{display:none}.login-panel__content{z-index:1;flex-direction:column;justify-content:center;align-items:center;width:min(100%,26rem);margin-inline:auto;padding:1.5rem 2rem;display:flex;position:relative}.login-brand{width:9.5rem;max-width:100%;margin-bottom:2.25rem}.login-form,.login-form__step,.login-password-step,.login-providers{width:min(100%,20rem)}.login-form__subtitle{color:var(--lp-text-muted);text-align:center;margin:-.5rem 0 1rem;font-size:.9rem}.login-providers{flex-direction:column;gap:.75rem;margin:.5rem 0 1.5rem;display:flex}.login-provider-form{margin:0 0 .75rem}.login-field{width:100%;margin-bottom:1rem;display:flex}.login-form__step>.login-input.p-inputtext,.login-form__step>.login-password.p-password{margin-bottom:1rem}.login-input.p-inputtext,.login-password.p-password,.login-password .p-inputtext,.login-password-input{width:100%}.login-password.p-password{display:flex}.login-input.p-inputtext,.login-password .p-inputtext,.login-password-input{border:1px solid var(--lp-input-border);background:var(--lp-input-bg);height:3.5rem;min-height:3.5rem;color:var(--lp-input-color);box-shadow:none;border-radius:5px;outline:none}.login-input.p-inputtext::-moz-placeholder{color:var(--lp-input-placeholder);opacity:1}.login-password .p-inputtext::-moz-placeholder{color:var(--lp-input-placeholder);opacity:1}.login-password-input::-moz-placeholder{color:var(--lp-input-placeholder);opacity:1}.login-input.p-inputtext::placeholder,.login-password .p-inputtext::placeholder,.login-password-input::placeholder{color:var(--lp-input-placeholder);opacity:1}.login-input.p-inputtext:enabled:focus,.login-password .p-inputtext:enabled:focus,.login-password-input:enabled:focus{border-color:var(--lp-input-focus-border)}.login-input--disabled.p-inputtext{color:var(--lp-input-disabled-color);background:var(--lp-input-disabled-bg);border-color:var(--lp-input-disabled-border);opacity:1}.login-submit,.login-submit.p-button{width:100%}.login-submit.p-button{background:var(--p-primary-500);color:#fff;border:none;border-radius:5px;height:3.5rem;min-height:3.5rem;font-weight:600}.login-submit.p-button:hover{background:var(--p-primary-600)}.login-provider__button{border:1px solid var(--lp-provider-border);background:var(--lp-provider-bg);width:100%;color:var(--lp-provider-color);font:inherit;cursor:pointer;border-radius:5px;justify-content:center;align-items:center;gap:.75rem;padding:1rem 1.25rem;transition:border-color .2s,background .2s;display:flex}.login-provider__button:hover{border-color:var(--lp-provider-border-hover);background:var(--lp-provider-bg-hover)}.login-divider{color:var(--lp-text-muted);align-items:center;gap:.75rem;margin:.75rem 0 1.25rem;font-size:.85rem;display:flex}.login-divider:before,.login-divider:after{content:"";background:var(--lp-input-border);flex:1;height:1px}.login-back-link{width:100%;color:var(--p-primary-500);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;gap:.4rem;margin-top:.75rem;padding:.75rem 0;font-size:.95rem;font-weight:600;display:inline-flex}.login-back-link:hover{color:var(--p-primary-600)}.login-signup-link{color:var(--lp-text-muted);flex-direction:column;align-items:center;gap:.25rem;margin-top:1.5rem;font-size:.9rem;display:flex}.login-signup-link a{color:var(--p-primary-500);font-weight:600}.login-link{color:var(--p-primary-500);font-weight:600;text-decoration:none}.login-link:hover{color:var(--p-primary-600);text-decoration:underline}.login-theme-toggle{z-index:10;border:1px solid var(--lp-input-border);width:2.25rem;height:2.25rem;color:var(--lp-text-muted);cursor:pointer;background:0 0;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:1rem;right:1rem}.login-spinner,.login-spinner--small{border:2px solid #ffffff2e;border-top-color:var(--p-primary-500);border-radius:999px;width:2rem;height:2rem;animation:.9s linear infinite login-spin;display:inline-block}.login-loading-state{text-align:center;flex-direction:column;align-items:center;gap:.75rem;padding:1rem 0;display:flex}.login-loading-state__text{color:var(--lp-overlay-muted)}.login-footer{z-index:1;justify-content:center;align-items:center;gap:.5rem;width:100%;padding-inline:1rem;display:flex}.login-footer__link,.login-footer__divider{font-size:.75rem}.login-footer__link{color:var(--lp-footer-link);text-decoration:underline}.login-footer__divider{color:var(--lp-footer-divider)}.signup-title{text-align:center;margin-bottom:1rem;font-size:1.25rem;font-weight:600}@keyframes login-spin{to{transform:rotate(360deg)}}@media (width>=960px){.login-shell{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.login-art{display:block}.login-brand{width:12rem}}@media (width<=959px){.login-panel__content{padding-inline:1.5rem}}
