:root{--color-primary: #1a2b4a;--color-primary-light: #2d4a8a;--color-accent: #2563eb;--color-accent-light: #93b4f8;--color-accent-bg: rgba(37, 99, 235, .06);--color-success: #16a34a;--color-success-light: #22c55e;--color-success-bg: rgba(22, 163, 74, .08);--color-danger: #dc2626;--color-danger-light: #fecaca;--color-danger-bg: rgba(220, 38, 38, .06);--color-warning: #f59e0b;--color-bg: #ffffff;--color-bg-muted: #f1f5f9;--color-bg-subtle: #f8fafc;--color-border: #e2e8f0;--color-border-light: #f1f5f9;--color-text: #0f172a;--color-text-secondary: #64748b;--color-text-muted: #94a3b8;--radius: 8px;--radius-lg: 16px;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-heading: "Space Grotesk", "Inter", sans-serif;--shadow-sm: 0 1px 2px rgba(0,0,0,.04);--shadow-md: 0 4px 16px rgba(0,0,0,.06);--shadow-lg: 0 8px 32px rgba(0,0,0,.08);--shadow-xl: 0 16px 48px rgba(0,0,0,.1);--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-base: .25s cubic-bezier(.4, 0, .2, 1);--transition-slow: .4s cubic-bezier(.4, 0, .2, 1)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{min-height:100vh;background:var(--color-bg);color:var(--color-text);line-height:1.45}.skip-link{position:absolute;top:-100px;left:16px;padding:12px 20px;background:var(--color-primary);color:#fff;font-weight:600;font-size:14px;border-radius:var(--radius);text-decoration:none;z-index:10000;transition:top .2s ease;box-shadow:var(--shadow-md)}.skip-link:focus{top:16px;outline:3px solid var(--color-accent);outline-offset:2px}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}button:focus-visible,a:focus-visible,[tabindex="0"]:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}@keyframes fadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-16px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@keyframes scaleInBounce{0%{opacity:0;transform:scale(.8)}60%{transform:scale(1.03)}to{opacity:1;transform:scale(1)}}@keyframes slideInRight{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:translate(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes drawCircle{0%{stroke-dashoffset:var(--circumference)}to{stroke-dashoffset:0}}@keyframes floatUp{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes expandWidth{0%{width:0}to{width:100%}}@keyframes tableRowIn{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:translate(0)}}.animate-fade-in{animation:fadeIn .5s ease-out forwards}.animate-fade-in-up{animation:fadeInUp .6s ease-out forwards}.animate-fade-in-down{animation:fadeInDown .5s ease-out forwards}.animate-slide-down{animation:slideDown .4s ease-out forwards}.animate-scale-in{animation:scaleIn .4s ease-out forwards}.animate-scale-in-bounce{animation:scaleInBounce .5s ease-out forwards}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--color-text-muted)}::selection{background:var(--color-accent-bg);color:var(--color-accent)}.app-shell.svelte-12qhfyh{display:flex;flex-direction:column;min-height:100vh;background:var(--color-bg)}
