@tailwind base;@tailwind components;@tailwind utilities;@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}@keyframes animate-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes zoom-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.animate-shimmer{animation:shimmer 2s infinite}.animate-in{animation:animate-in .4s ease-out}.zoom-in-95{animation:zoom-in .3s ease-out}.fade-in{animation:animate-in .3s ease-out}.slide-in-from-bottom-4{animation:animate-in .4s ease-out}.line-clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.line-clamp-3{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.scrollbar-hide{-ms-overflow-style:none;scrollbar-width:none}.scrollbar-hide::-webkit-scrollbar{display:none}.backdrop-blur-sm{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.focus-visible:focus{outline:2px solid currentColor;outline-offset:2px}button,input,select,textarea,[role=button]{transition:all .2s ease-out}.modal-content::-webkit-scrollbar{width:6px}.modal-content::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.modal-content::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:3px}.modal-content::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.gradient-primary{background:linear-gradient(135deg,var(--primary-color, #ef4444) 0%,var(--primary-color-dark, #dc2626) 100%)}@keyframes skeleton-loading{0%{background-position:-200px 0}to{background-position:calc(200px + 100%) 0}}.skeleton{background-color:#eee;background-image:linear-gradient(90deg,#eee,#f5f5f5,#eee);background-size:200px 100%;background-repeat:no-repeat;animation:skeleton-loading 1.3s ease-in-out infinite}@keyframes scroll-news{0%{transform:translate(0)}to{transform:translate(-33.333%)}}.animate-scroll{animation:scroll-news 20s linear infinite}:root{--bo-ease: cubic-bezier(.2, .8, .2, 1);--bo-shadow-xs: 0 1px 2px rgba(16, 24, 40, .05);--bo-shadow-sm: 0 1px 2px rgba(16, 24, 40, .04), 0 2px 8px -2px rgba(16, 24, 40, .08);--bo-shadow-md: 0 2px 4px rgba(16, 24, 40, .04), 0 12px 28px -10px rgba(16, 24, 40, .16);--bo-shadow-lg: 0 4px 8px rgba(16, 24, 40, .05), 0 24px 48px -16px rgba(16, 24, 40, .22)}body{font-family:Plus Jakarta Sans,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}.bo-card{box-shadow:var(--bo-shadow-sm);border:1px solid rgba(16,24,40,.05);transition:transform .35s var(--bo-ease),box-shadow .35s var(--bo-ease),border-color .35s var(--bo-ease);will-change:transform}@media (hover: hover){.bo-card:hover{transform:translateY(-3px);box-shadow:var(--bo-shadow-md);border-color:#10182814}}.bo-card:active{transform:translateY(0) scale(.995)}.bo-header{box-shadow:0 1px #1018280f,0 8px 24px -16px #1018282e}.bo-navbar{box-shadow:0 1px #1018280f}.bo-nav-pill{transition:color .2s var(--bo-ease),background-color .25s var(--bo-ease),box-shadow .25s var(--bo-ease),transform .25s var(--bo-ease)}.bo-nav-pill:active{transform:scale(.97)}.bo-btn-primary{transition:transform .25s var(--bo-ease),box-shadow .25s var(--bo-ease),filter .25s var(--bo-ease)}.bo-btn-primary:hover{transform:translateY(-1px);filter:brightness(1.04)}.bo-btn-primary:active{transform:translateY(0) scale(.98)}.bo-btn-ghost{box-shadow:var(--bo-shadow-xs);transition:background-color .2s var(--bo-ease),border-color .2s var(--bo-ease),transform .2s var(--bo-ease),box-shadow .2s var(--bo-ease)}.bo-btn-ghost:hover{box-shadow:var(--bo-shadow-sm);transform:translateY(-1px)}@keyframes bo-fade-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.bo-fade-up{animation:bo-fade-up .55s var(--bo-ease) both}@keyframes bo-pop{0%{transform:scale(.4);opacity:0}70%{transform:scale(1.15);opacity:1}to{transform:scale(1)}}.bo-pop{animation:bo-pop .3s var(--bo-ease) both}@keyframes bo-modal-in{0%{opacity:0;transform:translateY(16px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.bo-modal-in{animation:bo-modal-in .3s var(--bo-ease) both}@keyframes bo-backdrop-in{0%{opacity:0}to{opacity:1}}.bo-backdrop-in{animation:bo-backdrop-in .25s ease-out both}@keyframes bo-ping{0%{transform:scale(1);opacity:.7}80%,to{transform:scale(2.4);opacity:0}}.bo-ping{animation:bo-ping 2.2s cubic-bezier(0,0,.2,1) infinite}@media (prefers-reduced-motion: reduce){.bo-fade-up,.bo-pop,.bo-modal-in,.bo-backdrop-in,.bo-ping{animation:none}.bo-card,.bo-card:hover{transform:none}}
