*{margin:0;padding:0;box-sizing:border-box;-webkit-user-select:none;-moz-user-select:none;user-select:none}html{scroll-behavior:smooth;font-size:16px}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Inter,sans-serif;line-height:1.6;color:#1e293b;overflow-x:hidden;background:#ffffff;font-feature-settings:"cv02","cv03","cv04","cv11";font-variation-settings:"opsz" 32;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-user-select:none;-moz-user-select:none;user-select:none}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#f1f5f9}::-webkit-scrollbar-thumb{background:linear-gradient(135deg,#3b82f6,#8b5cf6);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:linear-gradient(135deg,#2563eb,#7c3aed)}::selection{background:transparent;color:inherit}::-moz-selection{background:transparent;color:inherit}.selectable{-webkit-user-select:text;-moz-user-select:text;user-select:text}.selectable::selection{background:rgba(59,130,246,.2);color:#1e293b}.selectable::-moz-selection{background:rgba(59,130,246,.2);color:#1e293b}:focus-visible{outline:2px solid #3b82f6;outline-offset:2px;border-radius:4px}*{backface-visibility:hidden}.gradient-bg{background:linear-gradient(135deg,#667eea,#764ba2)}.gradient-primary{background:linear-gradient(135deg,#3b82f6,#8b5cf6)}.gradient-secondary{background:linear-gradient(135deg,#06b6d4,#3b82f6 50%,#8b5cf6)}.gradient-text{background:linear-gradient(135deg,#1e293b,#3b82f6 50%,#8b5cf6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInLeft{0%{opacity:0;transform:translateX(-30px)}to{opacity:1;transform:translateX(0)}}@keyframes fadeInRight{0%{opacity:0;transform:translateX(30px)}to{opacity:1;transform:translateX(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-15px)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}@keyframes shimmer{0%{background-position:-200px 0}to{background-position:calc(200px + 100%) 0}}.animate-fadeInUp{animation:fadeInUp .6s ease forwards}.animate-fadeInDown{animation:fadeInDown .6s ease forwards}.animate-fadeInLeft{animation:fadeInLeft .6s ease forwards}.animate-fadeInRight{animation:fadeInRight .6s ease forwards}.animate-scaleIn{animation:scaleIn .5s ease forwards}.animate-float{animation:float 6s ease-in-out infinite}.animate-pulse{animation:pulse 2s ease-in-out infinite}.glass{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);border-radius:12px}.glass-dark{background:rgba(30,41,59,.1);border:1px solid rgba(30,41,59,.2);border-radius:12px}.btn-hover{transition:transform .3s ease,box-shadow .3s ease}.btn-hover:hover{transform:translateY(-2px);box-shadow:0 10px 30px rgba(0,0,0,.15)}.card-hover{transition:transform .3s ease,box-shadow .3s ease}.card-hover:hover{transform:translateY(-5px);box-shadow:0 15px 40px rgba(0,0,0,.1)}.text-shadow{text-shadow:0 2px 10px rgba(0,0,0,.1)}.text-shadow-lg{text-shadow:0 4px 20px rgba(0,0,0,.15)}.container-sm{max-width:640px}.container-md,.container-sm{margin:0 auto;padding:0 1rem}.container-md{max-width:768px}.container-lg{max-width:1024px}.container-lg,.container-xl{margin:0 auto;padding:0 1rem}.container-xl{max-width:1280px}.container-2xl{max-width:1536px;margin:0 auto;padding:0 1rem}@media (max-width:768px){html{font-size:14px}.container-2xl,.container-lg,.container-md,.container-sm,.container-xl{padding:0 .75rem}}@media (max-width:480px){html{font-size:13px}.container-2xl,.container-lg,.container-md,.container-sm,.container-xl{padding:0 .5rem}}@media (prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}html{scroll-behavior:auto}.animate-float,.animate-pulse{animation:none}}.loading-shimmer{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200px 100%;animation:shimmer 1.5s infinite}.focus-ring:focus-visible{outline:2px solid #3b82f6;outline-offset:2px;border-radius:4px}.high-contrast{filter:contrast(1.2)}@media (prefers-color-scheme:dark){.auto-dark{background:#1a1a1a;color:#ffffff}}