.umbra-admin{--umbra-void: #0a090c;--umbra-coal: #100e15;--umbra-ash: #16141d;--umbra-slate: #201d29;--umbra-smoke: #322e3d;--umbra-fog: #3d3849;--umbra-moon: #ddd0ff;--umbra-iris: #a988ff;--umbra-ember: #eca4ba;--umbra-bone: #ebe7f1;--umbra-mist: #9d96ac;--umbra-faint: #857e95;--background: var(--umbra-void);--foreground: var(--umbra-bone);--card: var(--umbra-ash);--card-foreground: var(--umbra-bone);--popover: var(--umbra-ash);--popover-foreground: var(--umbra-bone);--primary: var(--umbra-iris);--primary-foreground: var(--umbra-void);--secondary: var(--umbra-slate);--secondary-foreground: var(--umbra-bone);--muted: var(--umbra-slate);--muted-foreground: var(--umbra-mist);--accent: var(--umbra-slate);--accent-foreground: var(--umbra-bone);--destructive: #ff6b8a;--destructive-foreground: var(--umbra-void);--border: var(--umbra-smoke);--input: var(--umbra-slate);--ring: var(--umbra-iris);--chart-1: var(--umbra-iris);--chart-2: var(--umbra-moon);--chart-3: var(--umbra-ember);--chart-4: #f5c98f;--chart-5: #f47a92;--sidebar: var(--umbra-coal);--sidebar-foreground: var(--umbra-bone);--sidebar-primary: var(--umbra-iris);--sidebar-primary-foreground: var(--umbra-void);--sidebar-accent: var(--umbra-ash);--sidebar-accent-foreground: var(--umbra-bone);--sidebar-border: var(--umbra-smoke);--sidebar-ring: var(--umbra-iris);--radius: .7rem;--umbra-font-sans: "Hanken Grotesk", "Inter", ui-sans-serif, system-ui, sans-serif;--umbra-font-display: "Fraunces", ui-serif, Georgia, "Times New Roman", serif;font-family:var(--umbra-font-sans);background-color:var(--umbra-void);color:var(--umbra-bone);letter-spacing:-.01em}.umbra-admin [data-slot=sidebar-inset],.umbra-admin main{background-color:var(--umbra-void)}.umbra-admin [data-slot=sidebar],.umbra-admin [data-sidebar=sidebar]{background-color:var(--umbra-coal);border-color:var(--umbra-smoke)}.umbra-admin h1,.umbra-admin h2,.umbra-admin [data-slot=card-title],.umbra-admin [data-slot=dialog-title],.umbra-admin [data-slot=sheet-title]{font-family:var(--umbra-font-display);font-optical-sizing:auto;font-weight:380;font-style:italic;letter-spacing:-.02em;color:var(--umbra-bone);line-height:1.15}.umbra-admin h1.text-2xl,.umbra-admin h1.text-3xl{font-weight:380;font-size:clamp(1.7rem,2.2vw,2.2rem);letter-spacing:-.025em}.umbra-admin [data-slot=card-description]{color:var(--umbra-mist);letter-spacing:0}.umbra-admin .text-2xl.font-bold.tabular-nums,.umbra-admin .text-3xl.font-bold.tabular-nums{font-family:var(--umbra-font-display);font-weight:380;font-style:italic;letter-spacing:-.02em;color:var(--umbra-bone)}.umbra-admin .umbra-glow{background:linear-gradient(96deg,var(--umbra-moon) 2%,var(--umbra-iris) 56%,var(--umbra-ember) 98%);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 0 24px color-mix(in oklab,var(--umbra-iris) 30%,transparent))}.umbra-admin .umbra-hairline{height:1px;background:linear-gradient(90deg,transparent,var(--umbra-smoke) 14%,var(--umbra-smoke) 86%,transparent)}.umbra-admin-grain{position:fixed;inset:0;z-index:95;pointer-events:none;opacity:.04;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='150' height='150'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-size:150px 150px}.umbra-admin ::-webkit-scrollbar{width:10px;height:10px}.umbra-admin ::-webkit-scrollbar-track{background:var(--umbra-void)}.umbra-admin ::-webkit-scrollbar-thumb{background:var(--umbra-smoke);border-radius:99px;border:2px solid var(--umbra-void)}.umbra-admin ::-webkit-scrollbar-thumb:hover{background:var(--umbra-fog)}.umbra-admin ::selection{background:color-mix(in oklab,var(--umbra-iris) 58%,transparent);color:#fff}.umbra-admin [data-slot=card]{background-color:var(--umbra-ash);border-color:var(--umbra-smoke);box-shadow:0 1px color-mix(in oklab,var(--umbra-iris) 6%,transparent) inset,0 8px 24px -12px #0009;transition:border-color .22s cubic-bezier(.16,1,.3,1),box-shadow .22s cubic-bezier(.16,1,.3,1)}.umbra-admin [data-slot=card]:hover{border-color:color-mix(in oklab,var(--umbra-iris) 18%,var(--umbra-smoke))}.umbra-admin [data-slot=button][data-variant=default],.umbra-admin button[data-variant=default]{box-shadow:0 0 24px -8px color-mix(in oklab,var(--umbra-iris) 60%,transparent)}.umbra-admin [data-sidebar=header] .from-violet-600.to-fuchsia-600,.umbra-admin .from-violet-600.to-fuchsia-600{background-image:linear-gradient(135deg,var(--umbra-iris) 0%,var(--umbra-ember) 100%)}.umbra-admin [data-sidebar=menu-button][data-active=true]{background-color:color-mix(in oklab,var(--umbra-iris) 14%,transparent);color:var(--umbra-bone)}.umbra-admin [data-sidebar=menu-button][data-active=true] svg{color:var(--umbra-iris)}.umbra-admin [data-sidebar=menu-button]:hover:not([data-active=true]){background-color:color-mix(in oklab,var(--umbra-iris) 8%,transparent)}.umbra-admin [data-sidebar=group-label]{font-family:var(--umbra-font-sans);font-size:.65rem;text-transform:uppercase;letter-spacing:.18em;color:var(--umbra-faint);font-weight:600}.umbra-admin [data-slot=table] thead tr{border-color:var(--umbra-smoke)}.umbra-admin [data-slot=table] tbody tr{border-color:color-mix(in oklab,var(--umbra-smoke) 60%,transparent)}.umbra-admin [data-slot=table] th{font-family:var(--umbra-font-sans);font-size:.7rem;text-transform:uppercase;letter-spacing:.14em;color:var(--umbra-faint);font-weight:600}.umbra-admin *:focus-visible{outline:2px solid var(--umbra-iris);outline-offset:2px;border-radius:3px}.umbra-admin-bloom{position:fixed;inset:0;z-index:0;pointer-events:none;background:radial-gradient(ellipse 50% 40% at 15% 0%,color-mix(in oklab,var(--umbra-iris) 8%,transparent),transparent 60%),radial-gradient(ellipse 60% 50% at 85% 100%,color-mix(in oklab,var(--umbra-ember) 6%,transparent),transparent 60%)}.umbra-admin .umbra-kpi-card{transition:border-color .22s cubic-bezier(.16,1,.3,1),box-shadow .22s cubic-bezier(.16,1,.3,1);box-shadow:0 1px color-mix(in oklab,var(--umbra-iris) 4%,transparent) inset,0 8px 24px -14px #000000b3}.umbra-admin .umbra-kpi-card:hover{border-color:color-mix(in oklab,var(--umbra-iris) 28%,var(--umbra-smoke));box-shadow:0 1px color-mix(in oklab,var(--umbra-iris) 10%,transparent) inset,0 14px 36px -16px color-mix(in oklab,var(--umbra-iris) 30%,transparent),0 8px 24px -14px #000c}.umbra-admin .umbra-kpi-card[data-size=hero]:before{content:"";position:absolute;inset:-40% -20% auto auto;width:70%;height:180%;background:radial-gradient(ellipse at center,color-mix(in oklab,var(--umbra-ember) 16%,transparent),transparent 65%);pointer-events:none;z-index:0;filter:blur(40px)}.umbra-admin .umbra-kpi-card[data-size=hero]>*{position:relative;z-index:1}@keyframes umbra-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.umbra-admin .umbra-shimmer{background:linear-gradient(90deg,color-mix(in oklab,var(--umbra-moon) 8%,transparent),color-mix(in oklab,var(--umbra-iris) 16%,transparent) 40%,color-mix(in oklab,var(--umbra-ember) 10%,transparent),color-mix(in oklab,var(--umbra-moon) 8%,transparent));background-size:200% 100%;animation:umbra-shimmer 2.4s ease-in-out infinite;border-radius:calc(var(--radius) * .5)}@keyframes umbra-status-breathe{0%,to{transform:scale(1);opacity:.5}50%{transform:scale(1.9);opacity:0}}.umbra-admin .umbra-breathe-glow{border-radius:99px;animation:umbra-status-breathe 2.4s ease-in-out infinite;filter:blur(2px)}.umbra-admin .umbra-edu-card{position:relative;overflow:hidden;border-radius:var(--radius);border:1px dashed color-mix(in oklab,var(--umbra-iris) 22%,var(--umbra-smoke));background:radial-gradient(ellipse 60% 80% at 20% 30%,color-mix(in oklab,var(--umbra-iris) 6%,transparent),transparent 60%),radial-gradient(ellipse 50% 70% at 80% 70%,color-mix(in oklab,var(--umbra-ember) 5%,transparent),transparent 60%),var(--umbra-ash)}.umbra-admin .umbra-alert{position:relative;border-radius:calc(var(--radius) * .7);background-color:var(--umbra-ash);border:1px solid color-mix(in oklab,var(--umbra-smoke) 70%,transparent);padding:.85rem 1rem .85rem 1.2rem}.umbra-admin .umbra-alert:before{content:"";position:absolute;left:0;top:.6rem;bottom:.6rem;width:2px;border-radius:99px;background:var(--umbra-mist)}.umbra-admin .umbra-alert[data-tone=error]:before{background:#ff8a9c}.umbra-admin .umbra-alert[data-tone=warn]:before{background:#f5c98f}.umbra-admin .umbra-alert[data-tone=info]:before{background:var(--umbra-iris)}.umbra-admin .recharts-tooltip-wrapper{outline:none}.umbra-admin .recharts-default-tooltip{background-color:var(--umbra-coal)!important;border:1px solid color-mix(in oklab,var(--umbra-iris) 32%,var(--umbra-smoke))!important;border-radius:calc(var(--radius) * .6)!important;box-shadow:0 12px 28px -10px #000000b3;color:var(--umbra-bone)!important}.umbra-admin .recharts-cartesian-axis-tick text{fill:var(--umbra-mist)!important;font-family:var(--umbra-font-sans);font-size:.7rem}.umbra-admin .recharts-cartesian-grid line{stroke:color-mix(in oklab,var(--umbra-smoke) 60%,transparent)!important}.umbra-admin .umbra-sort-chevron{display:inline-block;margin-left:.35rem;opacity:0;transform:translateY(-1px);transition:opacity .18s,color .18s}.umbra-admin .umbra-sort-active .umbra-sort-chevron,.umbra-admin th:hover .umbra-sort-chevron{opacity:1}.umbra-admin .umbra-sort-active .umbra-sort-chevron{color:var(--umbra-iris)}.umbra-admin [data-slot=table] tbody tr:hover{background-color:color-mix(in oklab,var(--umbra-iris) 5%,transparent)}.umbra-admin .text-emerald-300,.umbra-admin .text-emerald-400,.umbra-admin .text-emerald-500,.umbra-admin .text-green-300,.umbra-admin .text-green-400,.umbra-admin .text-green-500{color:#9be6a3}.umbra-admin .text-amber-300,.umbra-admin .text-amber-400,.umbra-admin .text-amber-500,.umbra-admin .text-amber-600,.umbra-admin .text-yellow-200,.umbra-admin .text-yellow-300,.umbra-admin .text-yellow-400,.umbra-admin .text-yellow-500{color:#f5c98f}.umbra-admin .text-red-300,.umbra-admin .text-red-400,.umbra-admin .text-red-500,.umbra-admin .text-red-100,.umbra-admin .text-rose-400{color:var(--umbra-ember)}.umbra-admin .text-blue-300,.umbra-admin .text-blue-400,.umbra-admin .text-blue-500,.umbra-admin .text-sky-400,.umbra-admin .text-sky-500,.umbra-admin .text-indigo-400,.umbra-admin .text-purple-300,.umbra-admin .text-purple-400,.umbra-admin .text-purple-500,.umbra-admin .text-violet-300,.umbra-admin .text-violet-400,.umbra-admin .text-violet-500,.umbra-admin .text-fuchsia-300,.umbra-admin .text-fuchsia-400,.umbra-admin .text-fuchsia-500,.umbra-admin .text-pink-400{color:var(--umbra-iris)}.umbra-admin .bg-emerald-500\/5,.umbra-admin .bg-emerald-500\/10,.umbra-admin .bg-emerald-500\/15,.umbra-admin .bg-emerald-500\/20,.umbra-admin .bg-green-500\/5,.umbra-admin .bg-green-500\/10,.umbra-admin .bg-green-500\/15,.umbra-admin .bg-green-500\/20{background-color:color-mix(in oklab,#9be6a3 14%,transparent)}.umbra-admin .bg-amber-500\/5,.umbra-admin .bg-amber-500\/10,.umbra-admin .bg-amber-500\/15,.umbra-admin .bg-amber-500\/20,.umbra-admin .bg-yellow-500\/5,.umbra-admin .bg-yellow-500\/10,.umbra-admin .bg-yellow-500\/15,.umbra-admin .bg-yellow-500\/20{background-color:color-mix(in oklab,#f5c98f 14%,transparent)}.umbra-admin .bg-red-400\/10,.umbra-admin .bg-red-500\/5,.umbra-admin .bg-red-500\/10,.umbra-admin .bg-red-500\/15,.umbra-admin .bg-red-500\/20,.umbra-admin .bg-red-500\/80{background-color:color-mix(in oklab,var(--umbra-ember) 14%,transparent)}.umbra-admin .bg-blue-400\/5,.umbra-admin .bg-blue-500\/5,.umbra-admin .bg-blue-500\/10,.umbra-admin .bg-blue-500\/15,.umbra-admin .bg-blue-500\/20,.umbra-admin .bg-violet-500\/5,.umbra-admin .bg-violet-500\/10,.umbra-admin .bg-violet-500\/20,.umbra-admin .bg-purple-500\/5,.umbra-admin .bg-purple-500\/10,.umbra-admin .bg-purple-500\/20,.umbra-admin .bg-fuchsia-500\/10,.umbra-admin .bg-fuchsia-500\/15{background-color:color-mix(in oklab,var(--umbra-iris) 12%,transparent)}.umbra-admin .border-emerald-400\/20,.umbra-admin .border-emerald-400\/30,.umbra-admin .border-emerald-500\/20,.umbra-admin .border-emerald-500\/30,.umbra-admin .border-green-500\/20,.umbra-admin .border-green-500\/30{border-color:color-mix(in oklab,#9be6a3 28%,var(--umbra-smoke))}.umbra-admin .border-amber-400\/20,.umbra-admin .border-amber-400\/30,.umbra-admin .border-amber-500\/10,.umbra-admin .border-amber-500\/20,.umbra-admin .border-amber-500\/30,.umbra-admin .border-yellow-500\/20,.umbra-admin .border-yellow-500\/30{border-color:color-mix(in oklab,#f5c98f 30%,var(--umbra-smoke))}.umbra-admin .border-red-400\/20,.umbra-admin .border-red-400\/30,.umbra-admin .border-red-500\/20,.umbra-admin .border-red-500\/30{border-color:color-mix(in oklab,var(--umbra-ember) 32%,var(--umbra-smoke))}.umbra-admin .border-blue-400\/50,.umbra-admin .border-blue-500\/20,.umbra-admin .border-blue-500\/30,.umbra-admin .border-violet-400\/30,.umbra-admin .border-violet-500\/20,.umbra-admin .border-purple-500\/20{border-color:color-mix(in oklab,var(--umbra-iris) 28%,var(--umbra-smoke))}.umbra-admin .bg-emerald-500,.umbra-admin .bg-green-500{background-color:#9be6a3}.umbra-admin .bg-amber-500,.umbra-admin .bg-yellow-500{background-color:#f5c98f}.umbra-admin .bg-red-500{background-color:var(--umbra-ember)}.umbra-admin .bg-blue-500,.umbra-admin .bg-sky-500,.umbra-admin .bg-violet-500,.umbra-admin .bg-purple-500,.umbra-admin .bg-fuchsia-500{background-color:var(--umbra-iris)}.umbra-admin .ring-emerald-500\/30,.umbra-admin .ring-emerald-400\/30{--tw-ring-color: color-mix(in oklab, #9be6a3 30%, transparent)}.umbra-admin .ring-blue-500\/30,.umbra-admin .ring-violet-500\/30{--tw-ring-color: color-mix(in oklab, var(--umbra-iris) 30%, transparent)}.umbra-admin .ring-red-500\/30{--tw-ring-color: color-mix(in oklab, var(--umbra-ember) 30%, transparent)}.umbra-admin .from-violet-500,.umbra-admin .from-violet-600,.umbra-admin .from-blue-500,.umbra-admin .from-purple-500{--tw-gradient-from: var(--umbra-iris) var(--tw-gradient-from-position)}.umbra-admin .to-fuchsia-500,.umbra-admin .to-fuchsia-600,.umbra-admin .to-pink-500,.umbra-admin .to-violet-500{--tw-gradient-to: var(--umbra-ember) var(--tw-gradient-to-position)}
