*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}button,a,input,textarea,select{transition:all .2s ease-in-out}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,a:focus-visible{outline:2px solid #3b82f6;outline-offset:2px}a{text-decoration:none;transition:color .2s ease-in-out}html{scroll-behavior:smooth}.card-hover{transition:transform .2s ease-in-out,box-shadow .2s ease-in-out}.card-hover:hover{transform:translateY(-2px);box-shadow:0 12px 24px -8px #00000026}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.animate-pulse-slow{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:fadeIn .3s ease-in-out}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}.skeleton{background:linear-gradient(to right,#f0f0f0,#e0e0e0,#f0f0f0);background-size:2000px 100%;animation:shimmer 2s infinite}input:invalid:not(:placeholder-shown),textarea:invalid:not(:placeholder-shown){border-color:#ef4444}input:valid:not(:placeholder-shown),textarea:valid:not(:placeholder-shown){border-color:#10b981}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}[data-tooltip]{position:relative}[data-tooltip]:hover:after{content:attr(data-tooltip);position:absolute;bottom:100%;left:50%;transform:translate(-50%);padding:4px 8px;background:#1e293b;color:#fff;border-radius:4px;font-size:12px;white-space:nowrap;z-index:1000;margin-bottom:4px}p,li{line-height:1.7}h1,h2,h3,h4,h5,h6{line-height:1.3;font-weight:600}table{border-collapse:collapse;width:100%}th{text-align:left;font-weight:600;padding:12px}td{padding:12px}@media print{body{font-size:12pt}button,nav{display:none}.no-print{display:none!important}*{box-shadow:none!important}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}html{scroll-behavior:auto}}@media (prefers-contrast: high){button{border:2px solid currentColor}}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#f1f5f9}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#94a3b8}
