:root{--primary-50:hsl(214,100%,97%);--primary-100:hsl(214,95%,93%);--primary-200:hsl(213,97%,87%);--primary-300:hsl(212,96%,78%);--primary-400:hsl(213,94%,68%);--primary-500:hsl(217,91%,60%);--primary-600:hsl(221,83%,53%);--primary-700:hsl(224,76%,48%);--primary-800:hsl(226,71%,40%);--primary-900:hsl(224,64%,33%);--gray-50:hsl(210,20%,98%);--gray-100:hsl(220,14%,96%);--gray-200:hsl(220,13%,91%);--gray-300:hsl(216,12%,84%);--gray-400:hsl(218,11%,65%);--gray-500:hsl(220,9%,46%);--gray-600:hsl(215,14%,34%);--gray-700:hsl(217,19%,27%);--gray-800:hsl(215,28%,17%);--gray-900:hsl(221,39%,11%);--success:hsl(142,71%,45%);--warning:hsl(38,87%,55%);--error:hsl(0,72%,51%);--info:hsl(199,84%,55%);--font-sans:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--font-mono:"SF Mono",Monaco,"Cascadia Mono","Roboto Mono",monospace;--shadow-xs:0 1px 2px 0 rgba(0,0,0,0.05);--shadow-sm:0 1px 3px 0 rgba(0,0,0,0.1),0 1px 2px 0 rgba(0,0,0,0.06);--shadow-base:0 4px 6px -1px rgba(0,0,0,0.1),0 2px 4px -1px rgba(0,0,0,0.06);--shadow-md:0 10px 15px -3px rgba(0,0,0,0.1),0 4px 6px -2px rgba(0,0,0,0.05);--shadow-lg:0 20px 25px -5px rgba(0,0,0,0.1),0 10px 10px -5px rgba(0,0,0,0.04);--shadow-xl:0 25px 50px -12px rgba(0,0,0,0.15);--radius-sm:0.25rem;--radius-base:0.375rem;--radius-md:0.5rem;--radius-lg:0.75rem;--radius-xl:1rem;--transition-fast:150ms ease-in-out;--transition-base:200ms ease-in-out;--transition-slow:300ms ease-in-out}body{font-family:var(--font-sans);color:var(--gray-900);background-color:var(--gray-50);line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.25;color:var(--gray-900)}h1{font-size:2.25rem}h2{font-size:1.875rem}h3{font-size:1.5rem}h4{font-size:1.25rem}h5{font-size:1.125rem}h6{font-size:1rem}a{color:var(--primary-600);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--primary-700);text-decoration:underline}input,select,textarea{font-family:inherit;font-size:inherit;line-height:inherit;background-color:white!important;color:var(--gray-900)!important}input::-moz-placeholder,textarea::-moz-placeholder{color:var(--gray-500)!important}input::placeholder,textarea::placeholder{color:var(--gray-500)!important}.dark input,.dark option,.dark select,.dark textarea,option{background-color:white!important;color:var(--gray-900)!important}:focus{outline:none}:focus-visible{outline:2px solid var(--primary-500);outline-offset:2px}::-moz-selection{background-color:var(--primary-200);color:var(--primary-900)}::selection{background-color:var(--primary-200);color:var(--primary-900)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--gray-100)}::-webkit-scrollbar-thumb{background:var(--gray-400);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--gray-500)}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{opacity:0;transform:translateX(-8px)}to{opacity:1;transform:translateX(0)}}@keyframes slide-in{0%{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.animate-fadeIn{animation:fadeIn .3s ease-out}.animate-slideIn{animation:slideIn .3s ease-out}.animate-scaleIn{animation:scaleIn .2s ease-out}.animate-slide-in{animation:slide-in .3s ease-out}.card-hover{transition:all var(--transition-base)}.card-hover:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.button-press:active{transform:scale(.98)}@keyframes shimmer{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}.shimmer{position:relative;overflow:hidden}.shimmer:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);animation:shimmer 2s infinite}.status-dot{width:8px;height:8px;border-radius:50%;display:inline-block}.status-dot.success{background-color:var(--success)}.status-dot.warning{background-color:var(--warning)}.status-dot.error{background-color:var(--error)}.status-dot.info{background-color:var(--info)}.divider{height:1px;background-color:var(--gray-200);margin:1rem 0}@media (max-width:640px){h1{font-size:1.875rem}h2{font-size:1.5rem}h3{font-size:1.25rem}}.high-contrast{--foreground:0 0% 0%;--background:0 0% 100%;--primary:220 100% 30%;--primary-foreground:0 0% 100%;--border:0 0% 20%}.high-contrast.dark{--foreground:0 0% 100%;--background:0 0% 0%;--primary:220 100% 70%;--primary-foreground:0 0% 0%;--border:0 0% 80%}.high-contrast *{border-width:2px!important;font-weight:500!important}.high-contrast a,.high-contrast button{text-decoration:underline;text-underline-offset:2px}.reduce-motion *{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;animation-delay:.01ms!important;transition-delay:.01ms!important}.reduce-motion .animate-pulse,.reduce-motion .animate-spin{animation:none!important}.focus-visible :focus-visible{outline:3px solid var(--primary);outline-offset:2px;border-radius:2px}.skip-link{position:absolute!important;left:-9999px!important;top:0!important;width:1px!important;height:1px!important;overflow:hidden!important;clip-path:inset(100%)!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;opacity:0!important;pointer-events:none!important;border:none!important;outline:none!important;color:transparent!important;background:transparent!important}.skip-link:focus-visible{position:fixed!important;top:10px!important;left:10px!important;z-index:999999!important;opacity:1!important;width:auto!important;height:auto!important;padding:12px 20px!important;background:hsl(var(--primary))!important;color:hsl(var(--primary-foreground))!important;text-decoration:none!important;border-radius:6px!important;font-weight:600!important;font-size:14px!important;clip:auto!important;clip-path:none!important;overflow:visible!important;white-space:normal!important;box-shadow:0 4px 12px rgba(0,0,0,.15),0 2px 4px rgba(0,0,0,.1)!important;pointer-events:auto!important;transition:opacity .2s ease!important}.skip-link:focus:not(:focus-visible){position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important;clip-path:inset(100%)!important;clip:rect(0,0,0,0)!important}body .skip-link:focus{outline:none!important}.skip-link:active:not(:focus-visible),.skip-link:hover:not(:focus-visible){position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}@media (pointer:coarse){a,button,input,select,textarea{min-height:44px;min-width:44px}}li,p{line-height:1.6;letter-spacing:.025em}.text-red-600{color:#dc2626}.dark .text-red-400{color:#f87171}.text-green-600{color:#16a34a}.dark .text-green-400{color:#4ade80}.text-amber-600{color:#d97706}.dark .text-amber-400{color:#fbbf24}@media print{.fixed,.no-print,button,nav{display:none!important}body{font-size:12pt;line-height:1.5;background:white}a,body{color:black}a{text-decoration:underline}.card{border:1px solid black;page-break-inside:avoid}}@media (min-width:640px){:root{font-size:16px}}@media (min-width:1024px){:root{font-size:18px}}input,select,textarea{font-size:16px}a:not(.button):not(.btn){text-underline-offset:2px;text-decoration-thickness:1px}a:not(.button):not(.btn):hover{text-decoration-thickness:2px}[aria-busy=true]{cursor:progress}[aria-disabled=true],[disabled]{cursor:not-allowed;opacity:.6}[aria-invalid=true]{border-color:#dc2626!important}[aria-checked=true]{border-color:#16a34a!important}.keyboard-nav :focus{outline:2px dashed currentColor;outline-offset:4px}@media (hover:none){.touch-friendly>*+*{margin-top:1rem}}table{border-collapse:collapse;width:100%}th{text-align:left;font-weight:600}tr:hover{background-color:rgba(0,0,0,.05)}.dark tr:hover{background-color:rgba(255,255,255,.05)}.card{box-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px 0 rgba(0,0,0,.06)}.card:hover{box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -2px rgba(0,0,0,.05)}.badge{font-weight:600;letter-spacing:.025em;padding:.25rem .5rem}.skip-link,a.skip-link,body .skip-link,body a.skip-link,html body .skip-link,html body a.skip-link{position:absolute!important;left:-9999px!important;top:0!important;width:1px!important;height:1px!important;padding:0!important;margin:0!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;clip-path:inset(100%)!important;white-space:nowrap!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;-webkit-user-select:none!important;-moz-user-select:none!important;user-select:none!important;border:0!important;outline:0!important;box-shadow:none!important;background:transparent!important;color:transparent!important;text-decoration:none!important;transform:none!important;transition:none!important;animation:none!important;z-index:-9999!important}.skip-link:focus-visible,a.skip-link:focus-visible,body .skip-link:focus-visible,body a.skip-link:focus-visible,html body .skip-link:focus-visible,html body a.skip-link:focus-visible{position:fixed!important;left:10px!important;top:10px!important;z-index:2147483647!important;opacity:1!important;visibility:visible!important;width:auto!important;height:auto!important;padding:12px 20px!important;margin:0!important;background:#2563eb!important;color:#ffffff!important;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif!important;font-size:14px!important;font-weight:600!important;line-height:1.5!important;text-decoration:none!important;text-align:center!important;white-space:nowrap!important;border:2px solid #1d4ed8!important;border-radius:6px!important;box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06),0 0 0 3px rgba(37,99,235,.2)!important;pointer-events:auto!important;-webkit-user-select:auto!important;-moz-user-select:auto!important;user-select:auto!important;cursor:pointer!important;clip:auto!important;clip-path:none!important;overflow:visible!important;transition:opacity .15s ease-in-out,transform .15s ease-in-out,box-shadow .15s ease-in-out!important;transform:translateY(0)!important}.skip-link:focus-visible:hover,a.skip-link:focus-visible:hover,body .skip-link:focus-visible:hover,body a.skip-link:focus-visible:hover,html body .skip-link:focus-visible:hover,html body a.skip-link:focus-visible:hover{background:#1d4ed8!important;border-color:#1e40af!important;box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -2px rgba(0,0,0,.05),0 0 0 3px rgba(37,99,235,.3)!important;transform:translateY(-1px)!important}.skip-link:focus:not(:focus-visible),a.skip-link:focus:not(:focus-visible),body .skip-link:focus:not(:focus-visible),body a.skip-link:focus:not(:focus-visible),html body .skip-link:focus:not(:focus-visible),html body a.skip-link:focus:not(:focus-visible){position:absolute!important;left:-9999px!important;top:0!important;width:1px!important;height:1px!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;clip:rect(0,0,0,0)!important;clip-path:inset(100%)!important}.skip-link:hover:not(:focus-visible),a.skip-link:hover:not(:focus-visible),body .skip-link:hover:not(:focus-visible),body a.skip-link:hover:not(:focus-visible),html body .skip-link:hover:not(:focus-visible),html body a.skip-link:hover:not(:focus-visible){position:absolute!important;left:-9999px!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important}.skip-link:active:not(:focus-visible),a.skip-link:active:not(:focus-visible),body .skip-link:active:not(:focus-visible),body a.skip-link:active:not(:focus-visible),html body .skip-link:active:not(:focus-visible),html body a.skip-link:active:not(:focus-visible){position:absolute!important;left:-9999px!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important}.skip-link:visited,a.skip-link:visited,body .skip-link:visited,body a.skip-link:visited,html body .skip-link:visited,html body a.skip-link:visited{position:absolute!important;left:-9999px!important;opacity:0!important;visibility:hidden!important}.dark .skip-link:focus-visible,.dark a.skip-link:focus-visible,.dark body .skip-link:focus-visible,.dark body a.skip-link:focus-visible,html.dark body .skip-link:focus-visible,html.dark body a.skip-link:focus-visible{background:#3730a3!important;color:#ffffff!important;border-color:#312e81!important}@media print{.skip-link,a.skip-link{display:none!important}}@media (prefers-reduced-motion:reduce){.skip-link,.skip-link:focus-visible,a.skip-link,a.skip-link:focus-visible{transition:none!important;animation:none!important}}@media (prefers-contrast:high){.skip-link:focus-visible,a.skip-link:focus-visible{background:#000000!important;color:#ffffff!important;border:3px solid #ffffff!important;outline:3px solid #000000!important;outline-offset:2px!important}}