.container-fluid{width:100%;margin-left:auto;margin-right:auto;padding-left:1rem;padding-right:1rem}@media (min-width:640px){.container-fluid{padding-left:1.5rem;padding-right:1.5rem}}@media (min-width:768px){.container-fluid{padding-left:2rem;padding-right:2rem}}.flex-mobile-col{flex-direction:column}@media (min-width:768px){.md\:flex-row{flex-direction:row}}.flex-mobile-wrap{flex-wrap:wrap}@media (min-width:768px){.md\:flex-nowrap{flex-wrap:nowrap}}.grid-auto-fit{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem;display:grid}.grid-auto-fill{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1rem;display:grid}.grid-cols-mobile-1{grid-template-columns:repeat(1,1fr)}@media (min-width:640px){.sm\:grid-cols-2{grid-template-columns:repeat(2,1fr)}}@media (min-width:768px){.md\:grid-cols-3{grid-template-columns:repeat(3,1fr)}}@media (min-width:1024px){.lg\:grid-cols-4{grid-template-columns:repeat(4,1fr)}}@media (min-width:1280px){.xl\:grid-cols-5{grid-template-columns:repeat(5,1fr)}}.heading-responsive{font-size:1.5rem;line-height:1.2}@media (min-width:768px){.heading-responsive{font-size:2rem}}@media (min-width:1024px){.heading-responsive{font-size:2.5rem}}.text-truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.text-truncate-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.text-truncate-3{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.p-responsive{padding:1rem}@media (min-width:768px){.p-responsive{padding:1.5rem}}@media (min-width:1024px){.p-responsive{padding:2rem}}.m-responsive{margin:1rem}@media (min-width:768px){.m-responsive{margin:1.5rem}}@media (min-width:1024px){.m-responsive{margin:2rem}}.gap-responsive{gap:.5rem}@media (min-width:768px){.gap-responsive{gap:1rem}}@media (min-width:1024px){.gap-responsive{gap:1.5rem}}@media (max-width:639px){.hidden-mobile{display:none!important}}@media (min-width:640px) and (max-width:767px){.hidden-sm{display:none!important}}@media (min-width:768px) and (max-width:1023px){.hidden-md{display:none!important}}@media (min-width:1024px) and (max-width:1279px){.hidden-lg{display:none!important}}@media (min-width:1280px){.hidden-xl{display:none!important}}.visible-mobile{display:block}@media (min-width:768px){.visible-mobile{display:none!important}}.visible-desktop{display:none}@media (min-width:768px){.visible-desktop{display:block}}.card-responsive{background:hsl(var(--card));box-shadow:var(--shadow-sm);border-radius:.5rem;padding:1rem}@media (min-width:768px){.card-responsive{padding:1.5rem}}@media (min-width:1024px){.card-responsive{box-shadow:var(--shadow-md);padding:2rem}}.btn-responsive{padding:.5rem 1rem;font-size:.875rem}@media (min-width:768px){.btn-responsive{padding:.625rem 1.25rem;font-size:1rem}}.btn-mobile-full{width:100%}@media (min-width:768px){.btn-mobile-full{width:auto}}.layout-sidebar{flex-direction:column;display:flex}@media (min-width:768px){.layout-sidebar{flex-direction:row}.layout-sidebar>.sidebar{flex-shrink:0;width:16rem}.layout-sidebar>.content{flex:1;min-width:0}}.layout-two-col{grid-template-columns:1fr;gap:1rem;display:grid}@media (min-width:768px){.layout-two-col{grid-template-columns:1fr 1fr;gap:1.5rem}}@media (min-width:1024px){.layout-two-col{gap:2rem}}.layout-three-col{grid-template-columns:1fr;gap:1rem;display:grid}@media (min-width:640px){.layout-three-col{grid-template-columns:1fr 1fr}}@media (min-width:1024px){.layout-three-col{grid-template-columns:1fr 1fr 1fr;gap:1.5rem}}.scroll-mobile-x{-webkit-overflow-scrolling:touch;overflow-x:auto}@media (min-width:768px){.scroll-mobile-x{overflow-x:visible}}.scrollbar-hide{-ms-overflow-style:none;scrollbar-width:none}.scrollbar-hide::-webkit-scrollbar{display:none}.aspect-video{aspect-ratio:16/9}.aspect-square{aspect-ratio:1}.aspect-portrait{aspect-ratio:3/4}@media (max-width:767px){.touch-target{justify-content:center;align-items:center;min-width:44px;min-height:44px;display:inline-flex}}.safe-top{padding-top:env(safe-area-inset-top)}.safe-bottom{padding-bottom:env(safe-area-inset-bottom)}.safe-left{padding-left:env(safe-area-inset-left)}.safe-right{padding-right:env(safe-area-inset-right)}@keyframes slideInLeft{0%{transform:translate(-100%)}to{transform:translate(0)}}.animate-slide-in-left{animation:.3s ease-out slideInLeft}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.animate-fade-in{animation:.3s ease-in fadeIn}@media (max-width:767px){*{-webkit-tap-highlight-color:#0000001a}}.no-select{-webkit-user-select:none;user-select:none}.focus-ring{outline:none}.focus-ring:focus-visible{outline:2px solid hsl(var(--ring));outline-offset:2px}
