.oc-wrapper{
    width:100%;
}

.oc-cats{
    display:flex;
    overflow-x:auto;
    gap:10px;
    padding:10px;
    white-space:nowrap;
}

.oc-cats button{
    padding:8px 15px;
    border:none;
    background:#eee;
    cursor:pointer;
    border-radius:20px;
}

.oc-cats button.active{
    background:#333;
    color:#fff;
}

#oc-results{
    display:grid;
    grid-template-columns:repeat(auto-fill,minmax(220px,1fr));
    gap:15px;
    padding:15px;
}

.oc-card{
    border:1px solid #ddd;
    padding:10px;
    border-radius:10px;
    text-align:center;
}

.oc-card img{
    width:60px;
    height:60px;
    object-fit:contain;
    margin-bottom:10px;
}

.oc-card a{
    display:inline-block;
    margin-top:10px;
    padding:6px 12px;
    background:#0073aa;
    color:#fff;
    text-decoration:none;
    border-radius:6px;
}

.oc-loading-overlay{
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100vw;
    height: 100vh;
    background: rgba(255,255,255,0.7);
    backdrop-filter: blur(6px);
    display: none;
    align-items: center;
    justify-content: center;
    z-index: 999999;
}

.oc-loading-overlay img{
    width: 70px;
    height: 70px;
    animation: ocspin 1s linear infinite;
}
.oc-loading-overlay.actives {
    /* margin: auto; */
    display: flex !important;
    align-items: center;
    justify-content: center;
}

@keyframes ocspin{
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}