:root{--dur-fast:.12s;--dur-base:.2s;--dur-medium:.38s;--dur-long:.7s;--ease-out:cubic-bezier(.2, .8, .2, 1);--ease-overshoot:cubic-bezier(.34, 1.56, .64, 1)}@media(prefers-reduced-motion:reduce){:root{--dur-fast:.001ms;--dur-base:.001ms;--dur-medium:.001ms;--dur-long:.001ms}}@keyframes depth-enter{0%{opacity:0;transform:translateY(10px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}.depth-enter{animation:depth-enter var(--dur-medium) var(--ease-out) both}@layer base{:root{--navy-50:248 250 252;--navy-100:241 245 249;--navy-200:226 232 240;--navy-300:203 213 225;--navy-400:148 163 184;--navy-500:100 116 139;--navy-600:71 85 105;--navy-700:51 65 85;--navy-800:30 41 59;--navy-900:15 23 42;--navy-950:2 6 23;--teal-300:94 234 212;--teal-400:45 212 191;--teal-500:20 184 166;--teal-600:13 148 136;--teal-700:15 118 110;--blue-400:96 165 250;--blue-500:59 130 246;--blue-600:37 99 235;--blue-700:29 78 216;--theme-bg-primary:#fff;--theme-bg-secondary:#f8fafc;--theme-bg-tertiary:#f1f5f9;--theme-bg-overlay:#00000080;--theme-border:#e2e8f0;--theme-border-strong:#cbd5e1;--theme-text-primary:#0f172a;--theme-text-secondary:#475569;--theme-text-tertiary:#64748b;--theme-text-inverted:#fff;color-scheme:light;--color-success-bg:#f0fdfa;--color-success-border:#99f6e4;--color-success-text:#0f766e;--color-success:#14b8a6;--color-error-bg:#fff1f2;--color-error-border:#fecdd3;--color-error-text:#be123c;--color-error:#f43f5e;--color-warning-bg:#fffbeb;--color-warning-border:#fde68a;--color-warning-text:#92400e;--color-warning:#f59e0b;--color-info-bg:#eff6ff;--color-info-border:#bfdbfe;--color-info-text:#1d4ed8;--color-info:#3b82f6;--color-primary:#3b82f6;--color-primary-hover:#2563eb;--color-primary-active:#1d4ed8;--spacing-xs:.25rem;--spacing-sm:.5rem;--spacing-md:.75rem;--spacing-lg:1rem;--spacing-xl:1.5rem;--spacing-2xl:2rem;--spacing-3xl:3rem;--spacing-4xl:4rem;--font-size-xs:.625rem;--font-size-sm:.75rem;--font-size-base:.875rem;--font-size-lg:1rem;--font-size-xl:1.125rem;--font-size-2xl:1.5rem;--font-size-3xl:2rem;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a;--shadow-glow-teal:0 0 20px #14b8a64d;--shadow-glow-blue:0 0 20px #3b82f64d;--glass-bg:#f0fdfacc;--glass-border:#14b8a626;--glass-blur:12px}.dark{--theme-bg-primary:#0f172a;--theme-bg-secondary:#1e293b;--theme-bg-tertiary:#334155;--theme-bg-overlay:#0009;--theme-border:#334155;--theme-border-strong:#475569;--theme-text-primary:#fff;--theme-text-secondary:#94a3b8;--theme-text-tertiary:#64748b;--theme-text-inverted:#0f172a;color-scheme:dark;--color-success-bg:#042f2e;--color-success-border:#0f766e;--color-success-text:#2dd4bf;--color-error-bg:#4c0519;--color-error-border:#be123c;--color-error-text:#fda4af;--color-warning-bg:#451a03;--color-warning-border:#b45309;--color-warning-text:#fcd34d;--color-info-bg:#172554;--color-info-border:#1d4ed8;--color-info-text:#93c5fd;--color-primary:#60a5fa;--color-primary-hover:#3b82f6;--color-primary-active:#2563eb;--glass-bg:#0f172ab3;--glass-border:#ffffff1a}#root{background-color:var(--theme-bg-primary);min-height:100vh;transition:background-color .2s}body{font-family:var(--font-sans,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--theme-text-primary);background-color:var(--theme-bg-primary);transition:background-color .2s,color .2s}body.modal-open{width:100%;height:100%;position:fixed;overflow:hidden}}@keyframes modalEnter{0%{opacity:0;transform:scale(.95)translateY(-10px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes drawerEnter{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes checkmark{0%{opacity:0;transform:scale(0)rotate(-45deg)}50%{opacity:1;transform:scale(1.2)rotate(-45deg)}to{opacity:1;transform:scale(1)rotate(0)}}@keyframes slotFadeIn{0%{opacity:0;transform:translateY(-16px)}to{opacity:1;transform:translateY(0)}}.slot-reveal{animation:.25s cubic-bezier(.4,0,.2,1) forwards slotFadeIn}.slot-reveal:first-child{animation-delay:0s}.slot-reveal:nth-child(2){animation-delay:50ms}.slot-reveal:nth-child(3){animation-delay:.1s}.slot-reveal:nth-child(4){animation-delay:.15s}.classification-loading{animation:2s cubic-bezier(.4,0,.6,1) infinite pulse}@keyframes pulse{50%{opacity:.5}}@keyframes pulsingGlow{0%,to{border-color:#14b8a6cc;box-shadow:0 0 0 3px #14b8a666,0 0 30px #14b8a640,inset 0 0 20px #14b8a61a}50%{border-color:#14b8a6;box-shadow:0 0 0 6px #14b8a6b3,0 0 60px #14b8a680,inset 0 0 30px #14b8a626}}.animate-pulsing-glow{animation:.8s ease-in-out infinite pulsingGlow;border-style:solid!important}@keyframes movingDash{0%{stroke-dashoffset:0}to{stroke-dashoffset:24px}}@keyframes successPop{0%{transform:scale(1);box-shadow:0 0 #14b8a600}40%{transform:scale(1.08);box-shadow:0 0 40px 10px #14b8a666}70%{transform:scale(.98);box-shadow:0 0 20px 5px #14b8a633}to{transform:scale(1);box-shadow:0 0 #14b8a600}}.animate-success-pop{animation:.6s cubic-bezier(.34,1.56,.64,1) successPop}@keyframes drawCheck{0%{stroke-dashoffset:24px}to{stroke-dashoffset:0}}.animate-draw-check{stroke-dasharray:24;stroke-dashoffset:24px;animation:.4s ease-out forwards drawCheck}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.bg-shimmer{background:linear-gradient(90deg,#0000,#ffffff0d,#0000) 0 0/200% 100%;animation:2s infinite shimmer}.file-card-paper{background:linear-gradient(135deg,#f1f5f9,#fff);border-radius:.75rem;position:relative;overflow:hidden}.dark .file-card-paper{background:linear-gradient(135deg,#1e293b,#0f172a)}.file-card-paper:before{content:"";border-top:0 solid #0000;border-bottom:24px solid #0000;border-left:0 solid #0000;border-right:24px solid #e2e8f0;width:0;height:0;position:absolute;top:0;right:0}.dark .file-card-paper:before{border-color:#0000 #334155 #0000 #0000}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-4px)}20%,40%,60%,80%{transform:translate(4px)}}@keyframes pulse-once{0%{transform:scale(1);box-shadow:0 0 #3b82f666}50%{transform:scale(1.01);box-shadow:0 0 0 10px #3b82f600}to{transform:scale(1);box-shadow:0 0 #3b82f600}}.animate-pulse-once{animation:1.5s ease-out pulse-once}@keyframes bounce-subtle{0%,to{transform:translateY(0)}25%{transform:translateY(-6px)}50%{transform:translateY(0)}75%{transform:translateY(-3px)}}.animate-bounce-subtle{animation:.6s ease-in-out 2 bounce-subtle}.animate-modalEnter{animation:.3s cubic-bezier(.16,1,.3,1) modalEnter}.animate-drawerEnter{animation:.4s cubic-bezier(.16,1,.3,1) drawerEnter}.animate-checkmark{animation:.3s cubic-bezier(.16,1,.3,1) checkmark}.animate-shake{animation:.5s cubic-bezier(.36,.07,.19,.97) shake}@layer utilities{.backdrop-blur-glass{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}@supports (padding:env(safe-area-inset-top)){.modal-safe-area{padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}}@supports (height:100dvh){.modal-full-height{height:100dvh}}@supports not (height:100dvh){.modal-full-height{height:100vh;height:-webkit-fill-available}}.modal-scroll{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;overflow-y:auto}.custom-scrollbar::-webkit-scrollbar{width:8px;height:8px}.custom-scrollbar::-webkit-scrollbar-track{background:#f1f5f9;border-radius:4px}.custom-scrollbar::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}.custom-scrollbar::-webkit-scrollbar-thumb:hover{background:#94a3b8}.scrollbar-hide::-webkit-scrollbar{display:none}.scrollbar-hide{-ms-overflow-style:none;scrollbar-width:none}}@keyframes blob{0%{transform:translate(0)scale(1)}33%{transform:translate(30px,-50px)scale(1.1)}66%{transform:translate(-20px,20px)scale(.9)}to{transform:translate(0)scale(1)}}.animate-blob{animation:7s infinite blob}.animation-delay-2000{animation-delay:2s}@keyframes landing-fade-in-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.landing-fade-in{animation:.8s cubic-bezier(.21,.47,.32,.98) both landing-fade-in-up}.landing-fade-in-d1{animation:.8s cubic-bezier(.21,.47,.32,.98) .1s both landing-fade-in-up}.landing-fade-in-d2{animation:.8s cubic-bezier(.21,.47,.32,.98) .2s both landing-fade-in-up}.landing-fade-in-d3{animation:.8s cubic-bezier(.21,.47,.32,.98) .3s both landing-fade-in-up}.landing-fade-in-d4{animation:.8s cubic-bezier(.21,.47,.32,.98) .4s both landing-fade-in-up}.landing-fade-in-d5{animation:.8s cubic-bezier(.21,.47,.32,.98) .5s both landing-fade-in-up}.landing-scroll-fade-in{opacity:0;transform:translateY(20px)}.landing-scroll-fade-in.is-visible{animation:.8s cubic-bezier(.21,.47,.32,.98) both landing-fade-in-up}.landing-scroll-stagger-1,.landing-scroll-stagger-2,.landing-scroll-stagger-3{opacity:0;transform:translateY(20px)}.is-visible>.landing-scroll-stagger-1{animation:.8s cubic-bezier(.21,.47,.32,.98) both landing-fade-in-up}.is-visible>.landing-scroll-stagger-2{animation:.8s cubic-bezier(.21,.47,.32,.98) .15s both landing-fade-in-up}.is-visible>.landing-scroll-stagger-3{animation:.8s cubic-bezier(.21,.47,.32,.98) .3s both landing-fade-in-up}@media(prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;transition-delay:0s!important;animation-duration:.01ms!important;animation-iteration-count:1!important;animation-delay:0s!important}button:hover,a:hover,input:focus,textarea:focus,select:focus{transition-duration:.15s!important}html{scroll-behavior:smooth}}html body{background-color:var(--theme-bg-primary)}html.dark body{color-scheme:dark;background-color:#0a1628}
