*{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f9fafb;line-height:1.5}button,input,select,textarea{transition:all .2s ease-in-out}button:focus,input:focus,select:focus,textarea:focus{outline:2px solid #3b82f6;outline-offset:2px}button:hover{transform:translateY(-1px)}button:active{transform:translateY(0)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:#f1f5f9;border-radius:3px}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#94a3b8}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.card-hover{transition:all .2s ease-in-out}.card-hover:hover{transform:translateY(-2px);box-shadow:0 10px 25px -3px #0000001a,0 4px 6px -2px #0000000d}.gradient-blue{background:linear-gradient(135deg,#3b82f6,#1d4ed8)}.gradient-green{background:linear-gradient(135deg,#10b981,#059669)}.gradient-purple{background:linear-gradient(135deg,#8b5cf6,#7c3aed)}.gradient-orange{background:linear-gradient(135deg,#f59e0b,#d97706)}@media (max-width: 640px){button{min-height:44px;min-width:44px}.mobile-spacing{padding:1rem}.hide-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.hide-scrollbar::-webkit-scrollbar{display:none}}@media (prefers-color-scheme: dark){body{background-color:#111827;color:#f9fafb}}@media (prefers-reduced-motion: reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media print{.no-print{display:none!important}body{background:#fff!important;color:#000!important}.shadow-sm,.shadow-md,.shadow-lg{box-shadow:none!important}}@media (display-mode: standalone){body{padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}.pwa-hide{display:none}}.text-shadow{text-shadow:0 1px 3px rgba(0,0,0,.1)}.backdrop-blur{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.fade-in{animation:fadeIn .3s ease-in-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.slide-up{animation:slideUp .3s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.success{background-color:#dcfce7;border-color:#16a34a;color:#15803d}.error{background-color:#fef2f2;border-color:#dc2626;color:#dc2626}.warning{background-color:#fefce8;border-color:#ca8a04;color:#a16207}.loading{opacity:.6;pointer-events:none;cursor:not-allowed}.skeleton{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200% 100%;animation:loading 1.5s infinite}@keyframes loading{0%{background-position:200% 0}to{background-position:-200% 0}}input[type=text],input[type=email],input[type=password],input[type=number],select,textarea{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#fff;border:1px solid #d1d5db;border-radius:.5rem;padding:.75rem;font-size:1rem;line-height:1.5;transition:border-color .2s ease-in-out,box-shadow .2s ease-in-out}input[type=text]:focus,input[type=email]:focus,input[type=password]:focus,input[type=number]:focus,select:focus,textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.btn{display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1.5rem;font-size:.875rem;font-weight:500;border-radius:.5rem;border:none;cursor:pointer;transition:all .2s ease-in-out;text-decoration:none}.btn-primary{background-color:#3b82f6;color:#fff}.btn-primary:hover{background-color:#2563eb}.btn-secondary{background-color:#6b7280;color:#fff}.btn-secondary:hover{background-color:#4b5563}.btn-success{background-color:#10b981;color:#fff}.btn-success:hover{background-color:#059669}.btn-danger{background-color:#ef4444;color:#fff}.btn-danger:hover{background-color:#dc2626}.btn-outline{background-color:transparent;border:1px solid #d1d5db;color:#374151}.btn-outline:hover{background-color:#f9fafb;border-color:#9ca3af}
