@property --tw-animation-delay{syntax:"*";inherits:false;initial-value:0s}@property --tw-animation-direction{syntax:"*";inherits:false;initial-value:normal}@property --tw-animation-duration{syntax:"*";inherits:false}@property --tw-animation-fill-mode{syntax:"*";inherits:false;initial-value:none}@property --tw-animation-iteration-count{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-translate-y{syntax:"*";inherits:false;initial-value:0}@theme inline{--animation-delay-0:0s;--animation-delay-75:75ms;--animation-delay-100:.1s;--animation-delay-150:.15s;--animation-delay-200:.2s;--animation-delay-300:.3s;--animation-delay-500:.5s;--animation-delay-700:.7s;--animation-delay-1000:1s;--animation-repeat-0:0;--animation-repeat-1:1;--animation-repeat-infinite:infinite;--animation-direction-normal:normal;--animation-direction-reverse:reverse;--animation-direction-alternate:alternate;--animation-direction-alternate-reverse:alternate-reverse;--animation-fill-mode-none:none;--animation-fill-mode-forwards:forwards;--animation-fill-mode-backwards:backwards;--animation-fill-mode-both:both;--percentage-0:0;--percentage-5:.05;--percentage-10:.1;--percentage-15:.15;--percentage-20:.2;--percentage-25:.25;--percentage-30:.3;--percentage-35:.35;--percentage-40:.4;--percentage-45:.45;--percentage-50:.5;--percentage-55:.55;--percentage-60:.6;--percentage-65:.65;--percentage-70:.7;--percentage-75:.75;--percentage-80:.8;--percentage-85:.85;--percentage-90:.9;--percentage-95:.95;--percentage-100:1;--percentage-translate-full:1;--animate-in:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none);--animate-out:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none);@keyframes enter{0%{opacity:var(--tw-enter-opacity,1);transform:translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0)scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1))rotate(var(--tw-enter-rotate,0));filter:blur(var(--tw-enter-blur,0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity,1);transform:translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0)scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1))rotate(var(--tw-exit-rotate,0));filter:blur(var(--tw-exit-blur,0))}}--animate-accordion-down:accordion-down var(--tw-animation-duration,var(--tw-duration,.2s))var(--tw-ease,ease-out)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none);--animate-accordion-up:accordion-up var(--tw-animation-duration,var(--tw-duration,.2s))var(--tw-ease,ease-out)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none);--animate-collapsible-down:collapsible-down var(--tw-animation-duration,var(--tw-duration,.2s))var(--tw-ease,ease-out)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none);--animate-collapsible-up:collapsible-up var(--tw-animation-duration,var(--tw-duration,.2s))var(--tw-ease,ease-out)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none);@keyframes collapsible-down{0%{height:0}to{height:var(--radix-collapsible-content-height,var(--bits-collapsible-content-height,var(--reka-collapsible-content-height,var(--kb-collapsible-content-height,auto))))}}@keyframes collapsible-up{0%{height:var(--radix-collapsible-content-height,var(--bits-collapsible-content-height,var(--reka-collapsible-content-height,var(--kb-collapsible-content-height,auto))))}to{height:0}}--animate-caret-blink:caret-blink 1.25s ease-out infinite;@keyframes caret-blink{0%,70%,to{opacity:1}20%,50%{opacity:0}}}@utility animation-duration-*{--tw-animation-duration:calc(--value(number)*1ms);--tw-animation-duration:--value(--animation-duration-*,[duration],"initial",[*]);animation-duration:calc(--value(number)*1ms);animation-duration:--value(--animation-duration-*,[duration],"initial",[*])}@utility delay-*{animation-delay:calc(--value(number)*1ms);animation-delay:--value(--animation-delay-*,[duration],"initial",[*]);--tw-animation-delay:calc(--value(number)*1ms);--tw-animation-delay:--value(--animation-delay-*,[duration],"initial",[*])}@utility repeat-*{animation-iteration-count:--value(--animation-repeat-*,number,"initial",[*]);--tw-animation-iteration-count:--value(--animation-repeat-*,number,"initial",[*])}@utility direction-*{animation-direction:--value(--animation-direction-*,"initial",[*]);--tw-animation-direction:--value(--animation-direction-*,"initial",[*])}@utility fill-mode-*{animation-fill-mode:--value(--animation-fill-mode-*,"initial",[*]);--tw-animation-fill-mode:--value(--animation-fill-mode-*,"initial",[*])}@utility running{animation-play-state:running}@utility paused{animation-play-state:paused}@utility play-state-*{animation-play-state:--value("initial",[*])}@utility blur-in{--tw-enter-blur:20px}@utility blur-in-*{--tw-enter-blur:calc(--value(number)*1px);--tw-enter-blur:--value(--blur-*,[*])}@utility blur-out{--tw-exit-blur:20px}@utility blur-out-*{--tw-exit-blur:calc(--value(number)*1px);--tw-exit-blur:--value(--blur-*,[*])}@utility fade-in{--tw-enter-opacity:0}@utility fade-in-*{--tw-enter-opacity:calc(--value(number)/100);--tw-enter-opacity:--value(--percentage-*,[*])}@utility fade-out{--tw-exit-opacity:0}@utility fade-out-*{--tw-exit-opacity:calc(--value(number)/100);--tw-exit-opacity:--value(--percentage-*,[*])}@utility zoom-in{--tw-enter-scale:0}@utility zoom-in-*{--tw-enter-scale:calc(--value(number)*1%);--tw-enter-scale:calc(--value(ratio));--tw-enter-scale:--value(--percentage-*,[*])}@utility -zoom-in-*{--tw-enter-scale:calc(--value(number)*-1%);--tw-enter-scale:calc(--value(ratio)*-1);--tw-enter-scale:--value(--percentage-*,[*])}@utility zoom-out{--tw-exit-scale:0}@utility zoom-out-*{--tw-exit-scale:calc(--value(number)*1%);--tw-exit-scale:calc(--value(ratio));--tw-exit-scale:--value(--percentage-*,[*])}@utility -zoom-out-*{--tw-exit-scale:calc(--value(number)*-1%);--tw-exit-scale:calc(--value(ratio)*-1);--tw-exit-scale:--value(--percentage-*,[*])}@utility spin-in{--tw-enter-rotate:30deg}@utility spin-in-*{--tw-enter-rotate:calc(--value(number)*1deg);--tw-enter-rotate:calc(--value(ratio)*360deg);--tw-enter-rotate:--value(--rotate-*,[*])}@utility -spin-in{--tw-enter-rotate:-30deg}@utility -spin-in-*{--tw-enter-rotate:calc(--value(number)*-1deg);--tw-enter-rotate:calc(--value(ratio)*-360deg);--tw-enter-rotate:--value(--rotate-*,[*])}@utility spin-out{--tw-exit-rotate:30deg}@utility spin-out-*{--tw-exit-rotate:calc(--value(number)*1deg);--tw-exit-rotate:calc(--value(ratio)*360deg);--tw-exit-rotate:--value(--rotate-*,[*])}@utility -spin-out{--tw-exit-rotate:-30deg}@utility -spin-out-*{--tw-exit-rotate:calc(--value(number)*-1deg);--tw-exit-rotate:calc(--value(ratio)*-360deg);--tw-exit-rotate:--value(--rotate-*,[*])}@utility slide-in-from-top{--tw-enter-translate-y:-100%}@utility slide-in-from-top-*{--tw-enter-translate-y:calc(--value(integer)*var(--spacing)*-1);--tw-enter-translate-y:calc(--value(--percentage-*,--percentage-translate-*)*-100%);--tw-enter-translate-y:calc(--value(ratio)*-100%);--tw-enter-translate-y:calc(--value(--translate-*,[percentage],[length])*-1)}@utility slide-in-from-bottom{--tw-enter-translate-y:100%}@utility slide-in-from-bottom-*{--tw-enter-translate-y:calc(--value(integer)*var(--spacing));--tw-enter-translate-y:calc(--value(--percentage-*,--percentage-translate-*)*100%);--tw-enter-translate-y:calc(--value(ratio)*100%);--tw-enter-translate-y:--value(--translate-*,[percentage],[length])}@utility slide-in-from-left{--tw-enter-translate-x:-100%}@utility slide-in-from-left-*{--tw-enter-translate-x:calc(--value(integer)*var(--spacing)*-1);--tw-enter-translate-x:calc(--value(--percentage-*,--percentage-translate-*)*-100%);--tw-enter-translate-x:calc(--value(ratio)*-100%);--tw-enter-translate-x:calc(--value(--translate-*,[percentage],[length])*-1)}@utility slide-in-from-right{--tw-enter-translate-x:100%}@utility slide-in-from-right-*{--tw-enter-translate-x:calc(--value(integer)*var(--spacing));--tw-enter-translate-x:calc(--value(--percentage-*,--percentage-translate-*)*100%);--tw-enter-translate-x:calc(--value(ratio)*100%);--tw-enter-translate-x:--value(--translate-*,[percentage],[length])}@utility slide-in-from-start{&:dir(ltr){--tw-enter-translate-x:-100%}&:dir(rtl){--tw-enter-translate-x:100%}}@utility slide-in-from-start-*{&:where(:dir(ltr),[dir=ltr],[dir=ltr]*){--tw-enter-translate-x:calc(--value(integer)*var(--spacing)*-1);--tw-enter-translate-x:calc(--value(--percentage-*,--percentage-translate-*)*-100%);--tw-enter-translate-x:calc(--value(ratio)*-100%);--tw-enter-translate-x:calc(--value(--translate-*,[percentage],[length])*-1)}&:where(:dir(rtl),[dir=rtl],[dir=rtl]*){--tw-enter-translate-x:calc(--value(integer)*var(--spacing));--tw-enter-translate-x:calc(--value(--percentage-*,--percentage-translate-*)*100%);--tw-enter-translate-x:calc(--value(ratio)*100%);--tw-enter-translate-x:--value(--translate-*,[percentage],[length])}}@utility slide-in-from-end{&:dir(ltr){--tw-enter-translate-x:100%}&:dir(rtl){--tw-enter-translate-x:-100%}}@utility slide-in-from-end-*{&:where(:dir(ltr),[dir=ltr],[dir=ltr]*){--tw-enter-translate-x:calc(--value(integer)*var(--spacing));--tw-enter-translate-x:calc(--value(--percentage-*,--percentage-translate-*)*100%);--tw-enter-translate-x:calc(--value(ratio)*100%);--tw-enter-translate-x:--value(--translate-*,[percentage],[length])}&:where(:dir(rtl),[dir=rtl],[dir=rtl]*){--tw-enter-translate-x:calc(--value(integer)*var(--spacing)*-1);--tw-enter-translate-x:calc(--value(--percentage-*,--percentage-translate-*)*-100%);--tw-enter-translate-x:calc(--value(ratio)*-100%);--tw-enter-translate-x:calc(--value(--translate-*,[percentage],[length])*-1)}}@utility slide-out-to-top{--tw-exit-translate-y:-100%}@utility slide-out-to-top-*{--tw-exit-translate-y:calc(--value(integer)*var(--spacing)*-1);--tw-exit-translate-y:calc(--value(--percentage-*,--percentage-translate-*)*-100%);--tw-exit-translate-y:calc(--value(ratio)*-100%);--tw-exit-translate-y:calc(--value(--translate-*,[percentage],[length])*-1)}@utility slide-out-to-bottom{--tw-exit-translate-y:100%}@utility slide-out-to-bottom-*{--tw-exit-translate-y:calc(--value(integer)*var(--spacing));--tw-exit-translate-y:calc(--value(--percentage-*,--percentage-translate-*)*100%);--tw-exit-translate-y:calc(--value(ratio)*100%);--tw-exit-translate-y:--value(--translate-*,[percentage],[length])}@utility slide-out-to-left{--tw-exit-translate-x:-100%}@utility slide-out-to-left-*{--tw-exit-translate-x:calc(--value(integer)*var(--spacing)*-1);--tw-exit-translate-x:calc(--value(--percentage-*,--percentage-translate-*)*-100%);--tw-exit-translate-x:calc(--value(ratio)*-100%);--tw-exit-translate-x:calc(--value(--translate-*,[percentage],[length])*-1)}@utility slide-out-to-right{--tw-exit-translate-x:100%}@utility slide-out-to-right-*{--tw-exit-translate-x:calc(--value(integer)*var(--spacing));--tw-exit-translate-x:calc(--value(--percentage-*,--percentage-translate-*)*100%);--tw-exit-translate-x:calc(--value(ratio)*100%);--tw-exit-translate-x:--value(--translate-*,[percentage],[length])}@utility slide-out-to-start{&:dir(ltr){--tw-exit-translate-x:-100%}&:dir(rtl){--tw-exit-translate-x:100%}}@utility slide-out-to-start-*{&:where(:dir(ltr),[dir=ltr],[dir=ltr]*){--tw-exit-translate-x:calc(--value(integer)*var(--spacing)*-1);--tw-exit-translate-x:calc(--value(--percentage-*,--percentage-translate-*)*-100%);--tw-exit-translate-x:calc(--value(ratio)*-100%);--tw-exit-translate-x:calc(--value(--translate-*,[percentage],[length])*-1)}&:where(:dir(rtl),[dir=rtl],[dir=rtl]*){--tw-exit-translate-x:calc(--value(integer)*var(--spacing));--tw-exit-translate-x:calc(--value(--percentage-*,--percentage-translate-*)*100%);--tw-exit-translate-x:calc(--value(ratio)*100%);--tw-exit-translate-x:--value(--translate-*,[percentage],[length])}}@utility slide-out-to-end{&:dir(ltr){--tw-exit-translate-x:100%}&:dir(rtl){--tw-exit-translate-x:-100%}}@utility slide-out-to-end-*{&:where(:dir(ltr),[dir=ltr],[dir=ltr]*){--tw-exit-translate-x:calc(--value(integer)*var(--spacing));--tw-exit-translate-x:calc(--value(--percentage-*,--percentage-translate-*)*100%);--tw-exit-translate-x:calc(--value(ratio)*100%);--tw-exit-translate-x:--value(--translate-*,[percentage],[length])}&:where(:dir(rtl),[dir=rtl],[dir=rtl]*){--tw-exit-translate-x:calc(--value(integer)*var(--spacing)*-1);--tw-exit-translate-x:calc(--value(--percentage-*,--percentage-translate-*)*-100%);--tw-exit-translate-x:calc(--value(ratio)*-100%);--tw-exit-translate-x:calc(--value(--translate-*,[percentage],[length])*-1)}}@theme inline{@keyframes accordion-down{0%{height:0}to{height:var(
        --radix-accordion-content-height,var(--accordion-panel-height,auto)
      )}}@keyframes accordion-up{0%{height:var(
        --radix-accordion-content-height,var(--accordion-panel-height,auto)
      )}to{height:0}}}@utility no-scrollbar{-ms-overflow-style:none;scrollbar-width:none;&::-webkit-scrollbar{display:none}}@tailwind base;@tailwind components;@tailwind utilities;@import url("https://fonts.googleapis.com/css2?family=Urbanist:wght@300;400;500;600;700;800&display=swap");:root{--tw-background:240 20% 96%;--tw-foreground:240 28% 14%;--tw-card:0 0% 100%;--tw-card-foreground:240 28% 14%;--tw-primary:248 55% 63%;--tw-primary-foreground:0 0% 100%;--tw-secondary:240 20% 96%;--tw-secondary-foreground:240 28% 14%;--tw-muted:240 20% 98%;--tw-muted-foreground:220 9% 65%;--tw-destructive:0 84% 60%;--tw-destructive-foreground:0 0% 100%;--tw-border:220 13% 91%;--tw-input:220 13% 91%;--tw-ring:248 55% 63%;--accent:#7b6fd4;--accent-light:#eeedfc;--accent-mid:#a89fe0;--accent-dark:#5a4fb8;--bg:#f2f2f7;--surface:#fff;--surface-subtle:#f9f9fb;--text-primary:#1a1a2e;--text-secondary:#6b7280;--text-muted:#9ca3af;--text-disabled:#d1d5db;--border:#e5e7eb;--border-light:#f3f4f6;--border-strong:#d1d5db;--sidebar-bg:#fff;--sidebar-active-bg:#1a1a2e;--sidebar-hover:rgba(26,26,46,.05);--sidebar-text:#6b7280;--sidebar-w:240px;--green:#22c55e;--green-bg:#dcfce7;--green-text:#15803d;--yellow:#f59e0b;--yellow-bg:#fef3c7;--yellow-text:#b45309;--red:#ef4444;--red-bg:#fee2e2;--red-text:#b91c1c;--blue:#3b82f6;--blue-bg:#dbeafe;--blue-text:#1d4ed8;--purple:#7b6fd4;--purple-bg:#ede9fe;--purple-text:#5b21b6;--tint-green:#aaffd8;--tint-pink:#ffd5d5;--tint-blue:#aef;--tint-purple:#e8e5ff;--topbar-h:60px;--r-sm:8px;--r-md:12px;--r-lg:16px;--r-pill:9999px;--shadow-sm:0 1px 3px rgba(0,0,0,.06),0 1px 2px rgba(0,0,0,.04);--shadow-md:0 4px 16px rgba(0,0,0,.08);--shadow-lg:0 8px 32px rgba(0,0,0,.1);--shadow-accent:0 8px 24px rgba(123,111,212,.35);--ease-spring:cubic-bezier(0.16,1,0.3,1);--ease-smooth:cubic-bezier(0.4,0,0.2,1);--t-fast:150ms;--t-normal:200ms;--t-slow:700ms}*,:after,:before{box-sizing:border-box}html{font-size:14px}body{font-family:Urbanist,system-ui,-apple-system,sans-serif;background:var(--bg);color:var(--text-primary);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.skip-link{position:absolute;top:-40px;left:0;padding:8px 16px;background:var(--accent);color:#fff;z-index:10000;font-size:13px;font-weight:600;transition:top .2s}.skip-link:focus{top:0}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;transition-duration:.01ms!important}}.dashboard-layout{display:flex;min-height:100vh}.main-wrap{margin-left:var(--sidebar-w);flex:1 1;display:flex;flex-direction:column;min-width:0}.page-content{padding:24px 28px 40px;flex:1 1}.sidebar{width:var(--sidebar-w);min-height:100vh;background:var(--sidebar-bg);border-right:1px solid var(--border);display:flex;flex-direction:column;position:fixed;top:0;left:0;bottom:0;z-index:100;padding-bottom:20px;transition:transform .3s var(--ease-spring);overflow-y:auto;overflow-x:hidden}.sidebar::-webkit-scrollbar{width:4px}.sidebar::-webkit-scrollbar-track{background:transparent}.sidebar::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.sidebar-logo{gap:10px;padding:18px 16px 14px;border-bottom:1px solid var(--border-light);margin-bottom:4px}.logo-icon,.sidebar-logo{display:flex;align-items:center;flex-shrink:0}.logo-icon{width:36px;height:36px;background:var(--accent);border-radius:10px;justify-content:center;font-size:18px;box-shadow:var(--shadow-accent)}.logo-name{font-size:14px;font-weight:800;color:var(--text-primary);letter-spacing:-.4px;line-height:1.2}.logo-tagline{font-weight:400;margin-top:1px}.logo-tagline,.sidebar-section-label{font-size:10px;color:var(--text-muted)}.sidebar-section-label{font-weight:700;letter-spacing:.07em;text-transform:uppercase;padding:16px 18px 5px;display:flex;align-items:center}.nav-items-group{padding:0 8px}.nav-item{display:flex;align-items:center;gap:9px;padding:8px 10px;border-radius:var(--r-sm);color:var(--sidebar-text);font-size:13px;font-weight:500;transition:background var(--t-fast),color var(--t-fast);position:relative;cursor:pointer;text-decoration:none;font-family:Urbanist,sans-serif;width:100%}.nav-item:hover{background:var(--sidebar-hover);color:var(--text-primary)}.nav-item.active{background:var(--sidebar-active-bg);color:#fff}.nav-item.active:before{display:none}.nav-icon{width:20px;height:20px;display:flex;align-items:center;justify-content:center;font-size:15px;flex-shrink:0;opacity:.75}.nav-item.active .nav-icon{opacity:1;filter:brightness(1.4)}.nav-badge{margin-left:auto;background:var(--accent);color:#fff;font-size:10px;font-weight:700;padding:1px 6px;border-radius:var(--r-pill);line-height:1.5;flex-shrink:0}.nav-badge.yellow{background:var(--yellow)}.nav-item.active .nav-badge{background:hsla(0,0%,100%,.25);color:#fff}.sidebar-bottom{margin-top:auto;border-top:1px solid var(--border-light);padding-top:8px;padding-bottom:4px}.sidebar-collapse-btn{width:24px;height:24px;border-radius:6px;background:var(--bg);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;font-size:12px;cursor:pointer;margin-left:auto;flex-shrink:0;color:var(--text-muted);transition:background var(--t-fast),color var(--t-fast)}.sidebar-collapse-btn:hover{background:var(--border);color:var(--text-primary)}.topbar{height:var(--topbar-h);background:var(--surface);border-bottom:1px solid var(--border);display:flex;align-items:center;padding:0 28px;gap:12px;position:-webkit-sticky;position:sticky;top:0;z-index:50;flex-shrink:0}.topbar-title{font-size:16px;font-weight:700;color:var(--text-primary);letter-spacing:-.02em}.topbar-search{gap:8px;border:1px solid var(--border);padding:7px 14px;width:220px;font-size:13px;color:var(--text-secondary);font-family:Urbanist,sans-serif}.topbar-icon-btn,.topbar-search{display:flex;align-items:center;background:var(--bg);border-radius:var(--r-sm)}.topbar-icon-btn{width:34px;height:34px;border:1px solid var(--border);justify-content:center;font-size:16px;transition:background var(--t-fast);position:relative;cursor:pointer;flex-shrink:0}.topbar-icon-btn:hover{background:var(--border-light)}.notif-dot{position:absolute;top:6px;right:6px;width:7px;height:7px;background:var(--red);border-radius:50%;border:1.5px solid var(--surface)}.pill-year{background:var(--accent-light);color:var(--accent);font-size:12px;font-weight:600;padding:5px 12px;border-radius:var(--r-pill);flex-shrink:0}.card{background:var(--surface);border-radius:var(--r-md);border:1px solid var(--border);box-shadow:var(--shadow-sm)}.card-hover{transition:transform .2s var(--ease-smooth),box-shadow .2s var(--ease-smooth);cursor:pointer}.card-hover:hover{transform:translateY(-3px);box-shadow:var(--shadow-md)}.card-header{padding:18px 20px 14px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border-light)}.card-title{font-size:14px;font-weight:700;letter-spacing:-.01em}.card-action{font-size:12px;color:var(--accent);font-weight:600;cursor:pointer;text-decoration:none}.card-action:hover{text-decoration:underline}.card-body{padding:16px 20px}.kpi-card{background:var(--surface);border-radius:var(--r-md);padding:18px 20px;border:1px solid var(--border);box-shadow:var(--shadow-sm);position:relative;overflow:hidden;transition:transform .2s var(--ease-smooth),box-shadow .2s var(--ease-smooth)}.kpi-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-md)}.kpi-card .orb{position:absolute;top:0;right:0;width:80px;height:80px;border-radius:50%;opacity:.07;transform:translate(20px,-20px);pointer-events:none}.kpi-label{font-size:11px;font-weight:600;color:var(--text-secondary);letter-spacing:.04em;text-transform:uppercase;margin-bottom:10px;display:flex;align-items:center;gap:6px}.kpi-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.kpi-value{font-size:26px;font-weight:800;letter-spacing:-.08em;line-height:1;margin-bottom:8px}.kpi-meta{font-size:11px;color:var(--text-muted);display:flex;align-items:center;gap:5px}.deduction-card{background:linear-gradient(135deg,var(--accent) 0,var(--accent-mid) 100%);border-radius:var(--r-md);padding:22px;color:#fff;box-shadow:var(--shadow-accent);position:relative;overflow:hidden}.deduction-card:before{right:-30px;top:-30px;width:140px;height:140px;background:hsla(0,0%,100%,.08)}.deduction-card:after,.deduction-card:before{content:"";position:absolute;border-radius:50%;pointer-events:none}.deduction-card:after{right:20px;bottom:-40px;width:100px;height:100px;background:hsla(0,0%,100%,.06)}.badge{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:600;padding:3px 10px;border-radius:var(--r-pill);white-space:nowrap;font-family:Urbanist,sans-serif}.badge-dot{width:5px;height:5px;border-radius:50%;flex-shrink:0}.badge-done{background:var(--green-bg);color:var(--green-text)}.badge-review{background:var(--yellow-bg);color:var(--yellow-text)}.badge-ocr{background:var(--blue-bg);color:var(--blue-text)}.badge-failed{background:var(--red-bg);color:var(--red-text)}.badge-pending{background:var(--purple-bg);color:var(--purple-text)}.btn{display:inline-flex;align-items:center;gap:7px;font-family:Urbanist,sans-serif;font-size:13px;font-weight:600;padding:9px 18px;border-radius:var(--r-sm);cursor:pointer;border:none;transition:opacity var(--t-normal),transform var(--t-fast),background var(--t-fast);text-decoration:none}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{opacity:.88;transform:translateY(-1px)}.btn-secondary{background:var(--surface);color:var(--text-primary);border:1px solid var(--border)}.btn-secondary:hover{background:var(--bg);transform:translateY(-1px)}.btn-ghost{background:hsla(0,0%,100%,.22);color:#fff;border:1px solid hsla(0,0%,100%,.3)}.btn-ghost:hover{background:hsla(0,0%,100%,.32)}.btn-sm{font-size:12px;padding:7px 14px}.btn-lg{font-size:14px;padding:12px 24px}.progress-wrap{height:8px;background:var(--bg);border-radius:var(--r-pill);overflow:hidden}.progress-fill{height:100%;border-radius:var(--r-pill);background:linear-gradient(90deg,var(--accent),var(--accent-mid));transition:width 1.2s var(--ease-spring)}.filter-pill{font-size:12px;font-weight:600;padding:5px 14px;border-radius:var(--r-pill);border:1px solid var(--border);background:var(--surface);color:var(--text-secondary);cursor:pointer;transition:all var(--t-fast);font-family:Urbanist,sans-serif}.filter-pill.active{background:var(--accent);color:#fff;border-color:var(--accent)}.filter-pill:hover:not(.active){border-color:var(--accent);color:var(--accent)}.avatar{border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;color:#fff;flex-shrink:0;background:linear-gradient(135deg,var(--accent),var(--accent-mid))}.avatar-sm{width:28px;height:28px;font-size:11px}.avatar-md{width:36px;height:36px;font-size:14px}.avatar-lg{width:44px;height:44px;font-size:16px}.ds-table{width:100%;border-collapse:collapse}.ds-table thead th{background:var(--bg);font-size:11px;font-weight:600;color:var(--text-secondary);letter-spacing:.04em;text-transform:uppercase;padding:10px 16px;text-align:left;font-family:Urbanist,sans-serif}.ds-table tbody tr{border-top:1px solid var(--border-light);transition:background var(--t-fast)}.ds-table tbody tr:hover{background:rgba(123,111,212,.03)}.ds-table tbody td{padding:12px 16px;font-size:13px;vertical-align:middle}.upload-zone{background:var(--surface);border:2px dashed var(--border);border-radius:var(--r-md);padding:28px 20px;text-align:center;cursor:pointer;transition:border-color .2s,background .2s}.upload-zone:hover{border-color:var(--accent);background:var(--accent-light)}.chart-bars{display:flex;align-items:flex-end;gap:8px;height:80px}.chart-bar-col{flex:1 1;display:flex;flex-direction:column;align-items:center;gap:4px}.chart-bar{width:100%;border-radius:4px 4px 0 0;background:var(--accent-light);transition:background .2s;min-height:4px}.chart-bar.active{background:var(--accent)}.chart-bar-label{font-size:10px;color:var(--text-muted)}.reveal{opacity:0;transform:translateY(20px);animation:revealUp var(--t-slow) var(--ease-spring) forwards}.reveal-1{animation-delay:0s}.reveal-2{animation-delay:80ms}.reveal-3{animation-delay:.16s}.reveal-4{animation-delay:.24s}.reveal-5{animation-delay:.32s}@keyframes revealUp{to{opacity:1;transform:translateY(0)}}@keyframes rowDeleteFlash{0%{background:transparent}25%{background:rgba(239,68,68,.18);box-shadow:inset 0 0 0 1px rgba(239,68,68,.3)}60%{background:rgba(239,68,68,.1);opacity:1;transform:translateX(0)}to{background:rgba(239,68,68,.04);opacity:0;transform:translateX(16px)}}.row-deleting{animation:rowDeleteFlash .55s cubic-bezier(.4,0,.2,1) forwards;pointer-events:none}.sidebar-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:99}@media (max-width:1024px){:root{--sidebar-w:200px}}@media (max-width:768px){:root{--sidebar-w:0px}.sidebar{transform:translateX(-232px);width:232px}.sidebar.open{transform:translateX(0)}.sidebar-overlay.open{display:block}.main-wrap{margin-left:0}.page-content{padding:16px 16px 32px}.topbar{padding:0 16px}}@layer base{.theme{--font-heading:var(--font-sans);--font-sans:var(--font-sans)}:root{--background:oklch(1 0 0);--foreground:oklch(0.145 0 0);--card:oklch(1 0 0);--card-foreground:oklch(0.145 0 0);--popover:oklch(1 0 0);--popover-foreground:oklch(0.145 0 0);--primary:oklch(0.205 0 0);--primary-foreground:oklch(0.985 0 0);--secondary:oklch(0.97 0 0);--secondary-foreground:oklch(0.205 0 0);--muted:oklch(0.97 0 0);--muted-foreground:oklch(0.556 0 0);--accent:oklch(0.97 0 0);--accent-foreground:oklch(0.205 0 0);--destructive:oklch(0.577 0.245 27.325);--border:oklch(0.922 0 0);--input:oklch(0.922 0 0);--ring:oklch(0.708 0 0);--chart-1:oklch(0.87 0 0);--chart-2:oklch(0.556 0 0);--chart-3:oklch(0.439 0 0);--chart-4:oklch(0.371 0 0);--chart-5:oklch(0.269 0 0);--radius:0.625rem;--sidebar:oklch(0.985 0 0);--sidebar-foreground:oklch(0.145 0 0);--sidebar-primary:oklch(0.205 0 0);--sidebar-primary-foreground:oklch(0.985 0 0);--sidebar-accent:oklch(0.97 0 0);--sidebar-accent-foreground:oklch(0.205 0 0);--sidebar-border:oklch(0.922 0 0);--sidebar-ring:oklch(0.708 0 0)}.dark{--background:oklch(0.145 0 0);--foreground:oklch(0.985 0 0);--card:oklch(0.205 0 0);--card-foreground:oklch(0.985 0 0);--popover:oklch(0.205 0 0);--popover-foreground:oklch(0.985 0 0);--primary:oklch(0.922 0 0);--primary-foreground:oklch(0.205 0 0);--secondary:oklch(0.269 0 0);--secondary-foreground:oklch(0.985 0 0);--muted:oklch(0.269 0 0);--muted-foreground:oklch(0.708 0 0);--accent:oklch(0.269 0 0);--accent-foreground:oklch(0.985 0 0);--destructive:oklch(0.704 0.191 22.216);--border:oklch(1 0 0/10%);--input:oklch(1 0 0/15%);--ring:oklch(0.556 0 0);--chart-1:oklch(0.87 0 0);--chart-2:oklch(0.556 0 0);--chart-3:oklch(0.439 0 0);--chart-4:oklch(0.371 0 0);--chart-5:oklch(0.269 0 0);--sidebar:oklch(0.205 0 0);--sidebar-foreground:oklch(0.985 0 0);--sidebar-primary:oklch(0.488 0.243 264.376);--sidebar-primary-foreground:oklch(0.985 0 0);--sidebar-accent:oklch(0.269 0 0);--sidebar-accent-foreground:oklch(0.985 0 0);--sidebar-border:oklch(1 0 0/10%);--sidebar-ring:oklch(0.556 0 0)}*{@apply border-border outline-ring/50}body{@apply bg-background text-foreground}html{@apply font-sans}}@keyframes ppIdlePulse{0%,to{box-shadow:0 0 0 0 rgba(123,111,212,.42)}55%{box-shadow:0 0 0 11px rgba(123,111,212,0)}}@keyframes ppActivePulse{0%,to{box-shadow:0 0 0 0 rgba(123,111,212,.55)}55%{box-shadow:0 0 0 14px rgba(123,111,212,0)}}@keyframes ppAlertPulse{0%,to{box-shadow:0 0 0 0 rgba(245,158,11,.5)}55%{box-shadow:0 0 0 12px rgba(245,158,11,0)}}@keyframes ppSpin{to{transform:rotate(1turn)}}@keyframes ppCheckPop{0%{transform:scale(0) rotate(-18deg);opacity:0}65%{transform:scale(1.22) rotate(4deg);opacity:1}to{transform:scale(1) rotate(0);opacity:1}}@keyframes ppLineFill{0%{transform:scaleX(0);transform-origin:left}to{transform:scaleX(1);transform-origin:left}}@keyframes ppScanBeam{0%{top:6%;opacity:0}12%{opacity:1}88%{opacity:1}to{top:82%;opacity:0}}@keyframes ppDotBlink{0%,80%,to{transform:scale(.6);opacity:.4}40%{transform:scale(1);opacity:1}}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/8d697b304b401681-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/ba015fad6dcf6784-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/4cf2300e9c8272f7-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Geist Fallback;src:local("Arial");ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.00%;size-adjust:104.76%}.__className_188709{font-family:Geist,Geist Fallback;font-style:normal}.__variable_188709{--font-sans:"Geist","Geist Fallback"}