:root{--ink:#0f1b2d;--ink-soft:#24344d;--paper:#f6f4ef;--card:#fff;--line:#e3ded4;--cargo:#ea5b0c;--cargo-soft:#fdeadd;--ok:#1a7f4e;--ok-soft:#e2f3ea;--warn:#b97a00;--warn-soft:#fdf3dc;--bad:#b3261e;--bad-soft:#fbe7e5;--info:#1f5fa8;--info-soft:#e4eef9;--muted:#7a7264;--mono:"IBM Plex Mono", ui-monospace, monospace;--sans:"IBM Plex Sans", system-ui, sans-serif;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-xl:20px;--shadow-sm:0 1px 3px #0f1b2d0f;--shadow-md:0 4px 16px #0f1b2d14;--shadow-lg:0 12px 40px #0f1b2d1f;--shadow-xl:0 24px 64px #0f1b2d2e;--shadow-card:0 1px 3px #0f1b2d0a, 0 6px 18px #0f1b2d0f;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--duration-fast:.15s;--duration-normal:.25s;--duration-slow:.4s;--sidebar-width:240px;--sidebar-collapsed:64px}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--sans);background:radial-gradient(1200px 400px at 80% -10%, #ea5b0c0d, transparent), var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:14px;line-height:1.5}#root{min-height:100vh}a{color:inherit;text-decoration:none}button{font-family:var(--sans);cursor:pointer;background:0 0;border:none}input,select,textarea{font-family:var(--sans);font-size:14px}input:focus,select:focus,textarea:focus{outline:2px solid var(--cargo);outline-offset:-1px}table{border-collapse:collapse;width:100%}@keyframes fadeUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideRight{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-16px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes slideUpOut{0%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(-12px)scale(.96)}}@keyframes shimmer{0%{background-position:-400px 0}to{background-position:400px 0}}@keyframes pulseRing{0%{box-shadow:0 0 #ea5b0c66}70%{box-shadow:0 0 0 8px #ea5b0c00}to{box-shadow:0 0 #ea5b0c00}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes shrink{0%{width:100%}to{width:0%}}@keyframes countUp{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.fade-up{animation:fadeUp var(--duration-normal) var(--ease-out) both}.scale-in{animation:scaleIn var(--duration-normal) var(--ease-spring) both}.slide-down{animation:slideDown var(--duration-normal) var(--ease-spring) both}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:#cfc8ba;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#b8b0a0}::selection{color:var(--ink);background:#ea5b0c2e}:focus-visible{outline:2px solid var(--cargo);outline-offset:2px;border-radius:var(--radius-sm)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}::-webkit-scrollbar-track{background:0 0}.glass-card{-webkit-backdrop-filter:blur(16px);box-shadow:var(--shadow-card);background:#ffffffb3;border:1px solid #ffffff80}.glass-modal{-webkit-backdrop-filter:blur(20px);background:#ffffffd9;border:1px solid #fff9}.hover-lift{transition:transform var(--duration-normal) var(--ease-out), box-shadow var(--duration-normal) var(--ease-out)}.hover-lift:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.input-modern{border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--ink);transition:border-color var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out);background-color:#fff;outline:none;padding:9px 12px;font-size:14px}.input-modern:focus{border-color:var(--cargo);box-shadow:0 0 0 3px #ea5b0c1a}.input-modern::placeholder{color:#b8b0a0}@keyframes glow{0%,to{box-shadow:0 0 20px #ea5b0c26,0 0 40px #ea5b0c0d}50%{box-shadow:0 0 30px #ea5b0c40,0 0 60px #ea5b0c1a}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes gradientShift{0%{background-position:0%}50%{background-position:100%}to{background-position:0%}}@keyframes toastSlideIn{0%{opacity:0;transform:translate(80px)scale(.92)}to{opacity:1;transform:translate(0)scale(1)}}@keyframes toastSlideOut{0%{opacity:1;transform:translate(0)scale(1)}to{opacity:0;transform:translate(80px)scale(.92)}}.animate-toast-in{animation:toastSlideIn var(--duration-normal) var(--ease-spring) both}.animate-toast-out{animation:toastSlideOut var(--duration-fast) var(--ease-out) both}.login-bg{background:radial-gradient(ellipse 80% 60% at 50% -20%, #ea5b0c26, transparent), radial-gradient(ellipse 60% 50% at 80% 80%, #1f5fa814, transparent), radial-gradient(ellipse 50% 40% at 20% 60%, #1a7f4e0f, transparent), var(--ink);position:relative;overflow:hidden}.login-bg:before{content:"";pointer-events:none;background-color:#0000;background-image:radial-gradient(circle at 30% 70%,#ea5b0c14 0%,#0000 50%),radial-gradient(circle at 70% 30%,#1f5fa80f 0%,#0000 50%);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:200% 200%;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;animation:8s ease-in-out infinite gradientShift;position:absolute;inset:0}.bg-dots{background-image:radial-gradient(#0f1b2d0f 1px,#0000 1px);background-size:20px 20px}@keyframes skeletonPulse{0%,to{opacity:1}50%{opacity:.4}}.skeleton-pulse{animation:1.8s ease-in-out infinite skeletonPulse}@keyframes progressIndeterminate{0%{transform:translate(-100%)}to{transform:translate(400%)}}.progress-bar{background:linear-gradient(90deg, var(--cargo), var(--cargo-soft), var(--cargo));border-radius:0 0 var(--radius-sm) var(--radius-sm);background-size:200% 100%;height:3px;animation:1.8s ease-in-out infinite progressIndeterminate}.chip{letter-spacing:.2px;white-space:nowrap;border-radius:999px;align-items:center;gap:4px;padding:2px 10px;font-size:11px;font-weight:600;display:inline-flex}.table-responsive{-webkit-overflow-scrolling:touch;width:100%;overflow-x:auto}@media print{aside,header,.no-print{display:none!important}main{margin-left:0!important;padding:0!important}}
