.flex>*,.grid>*{min-width:0}.safe-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.safe-line-clamp-2{-webkit-line-clamp:2}.safe-line-clamp-2,.safe-line-clamp-3{display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden;min-width:0}.safe-line-clamp-3{-webkit-line-clamp:3}@supports (container-type:inline-size){.responsive-container{container-type:inline-size}@container (max-width: 400px){.container-responsive\:stack{flex-direction:column!important}.container-responsive\:hide-labels .label{display:none}.container-responsive\:full-width{width:100%!important}}@container (min-width: 401px) and (max-width: 768px){.container-responsive\:two-col{grid-template-columns:repeat(2,minmax(0,1fr))}}}@media (max-width:640px){.responsive-table thead{display:none}.responsive-table tbody tr{display:block;margin-bottom:1rem;border:1px solid var(--border);border-radius:.5rem;padding:.5rem}.responsive-table tbody td{display:flex;justify-content:space-between;padding:.25rem 0;border:none}.responsive-table tbody td:before{content:attr(data-label);font-weight:500;text-transform:capitalize}}.safe-absolute{position:absolute;max-width:calc(100vw - 2rem)}.button-group-responsive{display:flex;flex-wrap:wrap;gap:.5rem}@media (max-width:640px){.button-group-responsive>*{flex:1 1 100%}}.dialog-responsive{width:95vw;max-width:32rem;max-height:90vh;overflow-y:auto}.card-grid-auto{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:1rem}body{overflow-x:hidden}.prevent-overflow{max-width:100%;overflow-x:hidden}@media (max-width:640px){h1{font-size:1.5rem}h2{font-size:1.25rem}h3{font-size:1.125rem}.text-2xl{font-size:1.5rem}.text-xl{font-size:1.25rem}.text-lg{font-size:1.125rem}.responsive-padding{padding:1rem}.responsive-gap{gap:.75rem}}.select-trigger,select{min-width:0;max-width:100%}img{max-width:100%;height:auto;display:block}.banner-responsive{position:relative;padding-right:2rem}@media (min-width:640px){.banner-responsive{padding-right:8rem}}.form-field-responsive{display:grid;gap:.5rem}@media (min-width:640px){.form-field-responsive{grid-template-columns:150px 1fr;align-items:center}}