@import "https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&display=swap";.loading-fallback{min-height:var(--app-vh,100vh);background:radial-gradient(circle at 20% 15%,#7a4aa024,#0000 42%),radial-gradient(circle at 85% 80%,#653a871a,#0000 40%),linear-gradient(160deg,#f8f5fb 0%,#f3eef8 48%,#eef4fb 100%);place-items:center;padding:24px;display:grid}.loading-fallback--compact{background:0 0;min-height:420px;padding:48px 24px}.loading-fallback__card{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffe0;border:1px solid #653a871f;border-radius:20px;flex-direction:column;align-items:center;gap:8px;min-width:min(100%,280px);padding:28px 32px 24px;display:flex;box-shadow:0 18px 40px #102a5614,inset 0 2px #fffc}.loading-fallback__logo-wrap{place-items:center;width:72px;height:72px;margin-bottom:6px;display:grid;position:relative}.loading-fallback__logo{z-index:1;width:40px;height:auto;position:relative}.loading-fallback__ring{border:3px solid #653a87;border-color:#653a87 #7a4aa0 #653a871f #653a871f;border-radius:50%;animation:.85s linear infinite loading-fallback-spin;position:absolute;inset:0}.loading-fallback__title{color:#3d2a52;letter-spacing:.01em;margin:0;font-size:16px;font-weight:750;line-height:1.2}.loading-fallback__text{color:#7a6b8c;margin:0;font-size:13px;font-weight:550;line-height:1.35}.loading-fallback__bars{align-items:flex-end;gap:5px;height:18px;margin-top:10px;display:flex}.loading-fallback__bars span{background:linear-gradient(#7a4aa0,#653a87);border-radius:999px;width:5px;animation:.9s ease-in-out infinite loading-fallback-bounce}.loading-fallback__bars span:first-child{height:8px;animation-delay:0s}.loading-fallback__bars span:nth-child(2){height:14px;animation-delay:.12s}.loading-fallback__bars span:nth-child(3){height:10px;animation-delay:.24s}@keyframes loading-fallback-spin{to{transform:rotate(360deg)}}@keyframes loading-fallback-bounce{0%,to{opacity:.55;transform:scaleY(.65)}50%{opacity:1;transform:scaleY(1)}}@media (prefers-reduced-motion:reduce){.loading-fallback__ring,.loading-fallback__bars span{animation:none}.loading-fallback__ring{border-color:#653a8759}}.admin-table-skeleton{background:#fff;border:1px solid #653a871f;border-radius:14px;flex-direction:column;gap:0;display:flex;overflow:hidden;box-shadow:0 6px 18px #672b8d14}.admin-table-skeleton__head,.admin-table-skeleton__row{grid-template-columns:repeat(var(--skeleton-cols,5), minmax(0, 1fr));align-items:center;gap:14px;display:grid}.admin-table-skeleton__head{background:#6a2b8d;min-height:46px;padding:0 14px}.admin-table-skeleton__row{border-bottom:1px solid #653a8714;min-height:44px;padding:0 14px}.admin-table-skeleton__row:last-child{border-bottom:none}.admin-table-skeleton__chip{background:linear-gradient(90deg,#653a8714 0%,#653a8729 45%,#653a8714 100%) 0 0/200% 100%;border-radius:999px;max-width:100%;height:12px;animation:1.25s ease-in-out infinite admin-table-skeleton-shimmer;display:block}.admin-table-skeleton__chip--head{background:linear-gradient(90deg,#ffffff38 0%,#ffffff6b 45%,#ffffff38 100%) 0 0/200% 100%;height:11px}.admin-table-skeleton__chip--c0{width:72%}.admin-table-skeleton__chip--c1{width:48%}.admin-table-skeleton__chip--c2{width:60%}@keyframes admin-table-skeleton-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@media (prefers-reduced-motion:reduce){.admin-table-skeleton__chip{animation:none}}:root{color:#102a56;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--color-primary:#1769e0;--color-navy:#102a56;--color-green:#18a957;--color-light-blue:#eaf4ff;--color-bg:#f7fafd;--color-border:#dce7f3;--color-muted:#5b6b86;--app-bg:#f7fafd;--app-surface:#fff;--app-border:#dce7f3;--app-text:#102a56;--app-text-secondary:#5b6b86;--sidebar-bg:#653a87;--sidebar-active:#1769e0;--app-zoom:.9;--app-vh:calc(100vh / var(--app-zoom));--app-dvh:calc(100dvh / var(--app-zoom));background:#f7fafd;font-family:Manrope,Segoe UI,system-ui,-apple-system,sans-serif}*,:before,:after{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}html{zoom:var(--app-zoom);background:var(--app-bg)}body{min-width:320px;min-height:var(--app-vh);background:var(--app-bg)}#root{min-height:var(--app-vh)}a{color:inherit}button,input{font:inherit}.ant-notification{z-index:2100}.ant-notification-topRight{top:20px!important;right:20px!important}.ally-toast.ant-notification-notice{border:1px solid var(--color-border);width:min(380px,100vw - 32px);padding:14px 16px;overflow:hidden;background:#fff!important;border-radius:14px!important;box-shadow:0 18px 40px #102a561f,0 4px 12px #102a560f!important}.ally-toast.ant-notification-notice:before{content:"";border-radius:14px 0 0 14px;width:4px;position:absolute;top:0;bottom:0;left:0}.ally-toast--success.ant-notification-notice:before{background:linear-gradient(#2fc56b,#18a957)}.ally-toast--error.ant-notification-notice:before{background:linear-gradient(#ff7875,#ff4d4f)}.ally-toast--info.ant-notification-notice:before,.ally-toast--warning.ant-notification-notice:before{background:linear-gradient(#69b1ff,#1769e0)}.ally-toast--warning.ant-notification-notice:before{background:linear-gradient(#ffc53d,#fa8c16)}.ally-toast .ant-notification-notice-with-icon .ant-notification-notice-message{margin-bottom:2px;line-height:1.3;color:var(--color-navy)!important;margin-inline-start:40px!important;font-size:.95rem!important;font-weight:750!important}.ally-toast .ant-notification-notice-with-icon .ant-notification-notice-description{line-height:1.45;color:var(--color-muted)!important;margin-inline-start:40px!important;font-size:.86rem!important}.ally-toast .ant-notification-notice-icon{margin-inline-start:2px!important;font-size:22px!important}.ally-toast--success .ant-notification-notice-icon{color:#18a957!important}.ally-toast--error .ant-notification-notice-icon{color:#ff4d4f!important}.ally-toast--info .ant-notification-notice-icon{color:#1769e0!important}.ally-toast--warning .ant-notification-notice-icon{color:#fa8c16!important}.ally-toast .ant-notification-notice-close{color:#8a97ab;top:14px!important;inset-inline-end:14px!important}.ally-toast .ant-notification-notice-close:hover{color:var(--color-navy)}.ant-spin .ant-spin-dot-item{background-color:var(--color-primary)}.admin-layout .ant-spin-dot-item{background-color:var(--sidebar-bg,#653a87)!important}.admin-layout .ant-spin-text{color:var(--sidebar-bg,#653a87)}
