.heading-xl {
    font-size: 1.5rem;
    line-height: 2rem;
}

.text-xl {
    font-size: 1.25rem !important;
    line-height: 1.5rem !important;
}

.text-2xl {
    font-size: 1.5rem;
    line-height: 2rem;
}

.text-3xl {
    font-size: 1.875rem !important;
    line-height: 2.25rem !important;
}

.border-custom {
    border: solid #e2e8f0 1px;
}

.rounded-20 {
    border-radius: 20px;
}

.flex {
    display: flex;
}

.items-center {
    align-items: center;
}

.justify-between {
    justify-content: space-between;
}

.grid {
    display: grid;
}

.grid-cols {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.gap-2 {
    gap: .5rem;
}

.gap-3 {
    gap: .75rem;
}

.gap-5 {
    gap: 1.5rem;
}

.text-xs {
    font-size: .75rem;
    line-height: 1rem;
}

.navbar-bg {
    background: #37538d;
    background: linear-gradient(to right, #1f59b8 .1%, #578add 99.91%);
}

.header-genai__template {
    padding: 6rem 0 4rem 0;
}

.body-genai__template {
    padding: 0 3rem;
}

.filter-top {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
}

.filter-search {
    min-width: 400px;
    color: #9ca3af;
}

.filter-search .fa-magnifying-glass {
    position: absolute;
    top: 25%;
    left: 10px;
    color: #9ca3af;
}

.filter-search input {
    width: 100%;
    padding: 6px 32px;
    box-shadow: 0 0 #0000, 0 0 #0000, 0 0 #0000 !important;
    background-color: rgb(244 244 244);
    border-radius: 5px;
}

.filter-selected {
    display: flex;
}

.filter-selected .item-tpl {
    border-radius: 5px;
    background-color: #fff;
}

.filter-selected .item-tpl.active {
    background-color: #efefff;
}


.template-item {
    border-radius: 1rem;
    display: flex;
    flex-direction: column;
    height: 100%;
}

.icon-header {
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 5px;
    background-color: #c8d1e9;
    width: 2.5rem;
    height: 2.5rem;
    font-size: 1.5rem;
    line-height: 2rem;
}

.template-item__name {
    font-size: 1.125rem;
    line-height: 1.75rem;
}

.task-bg {
    background-color: #f3f4f6;
    border-radius: 20px;
}

.bg-template__button {
    color: #fff;
    border-radius: 5px;
}

.template-item .view-template-btn {
    margin-top: auto;
}

#template-detail {
    display: none;
}

#back-btn {
    border: 0;
    background-color: transparent;
}

#back-btn:hover {
    background-color: #f1f5f9;
    border-radius: 6px;
}

#copy-prompt {
    border-radius: 5px;
    background-color: transparent;
}

#copy-prompt:hover {
    background-color: #f1f5f9;
}

#detail-prompt {
    background-color: #efefef;
    white-space: pre-wrap;
    border-radius: 7px;
}

@media (max-width: 640px) {
    #template-list .grid {
        grid-template-columns: repeat(1, minmax(0, 1fr));
    }
}

@media (max-width: 640px) {
    .body-genai__template {
        padding: 0 1rem;
    }

    .filter-selected {
        flex-wrap: wrap;
    }

    .filter-selected .item-tpl {
        margin-bottom: .5rem;
    }

    .filter-search .fa-magnifying-glass {
        top: 6%;
    }

    .grid-cols {
        grid-template-columns: repeat(1, minmax(0, 1fr));
    }
}