*{margin:0;padding:0;box-sizing:border-box}:root{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;line-height:1.5;font-weight:400;--primary-color: #007bff;--primary-hover: #0056b3;--secondary-color: #6c757d;--success-color: #28a745;--danger-color: #dc3545;--warning-color: #ffc107;--info-color: #17a2b8;--light-color: #f8f9fa;--dark-color: #343a40;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .12), 0 1px 2px rgba(0, 0, 0, .24);--shadow-md: 0 4px 6px rgba(0, 0, 0, .1);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .1);--border-radius: 8px;--border-radius-lg: 12px;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;min-height:100vh;background-color:#f5f5f5;color:#333;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent;touch-action:manipulation;min-height:-webkit-fill-available}#root{min-height:100vh;min-height:-webkit-fill-available}*,*:before,*:after{-webkit-tap-highlight-color:transparent}*{-webkit-overflow-scrolling:touch}button,input,select,textarea{touch-action:manipulation}@media (max-width: 768px){:root{font-size:16px}}@media (max-width: 480px){:root{font-size:14px}}input,button,select,textarea{font-family:inherit;font-size:inherit}button{cursor:pointer;border:none;outline:none}a{color:var(--primary-color);text-decoration:none}a:hover{text-decoration:underline}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#a8a8a8}@media (max-width: 768px){:root{font-size:14px}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}.fade-in{animation:fadeIn .3s ease-out}.slide-in{animation:slideIn .3s ease-out}*:focus{outline:2px solid var(--primary-color);outline-offset:2px}button:focus,input:focus,select:focus,textarea:focus{outline:2px solid var(--primary-color);outline-offset:2px}
