/* ==========================================================
   PÁGINA DE BRINQUEDOS
========================================================== */

.catalog-page-section{
  background:#f8fafc;
  min-height:100vh;
  padding:60px 20px;
}

.catalog-page-header{
  margin-bottom:28px;
}

.catalog-page-header h1{
  font-size:34px;
  font-weight:800;
  color:#1e293b;
  margin:12px 0 8px;
}

.catalog-page-header p{
  color:#64748b;
  font-size:16px;
  max-width:620px;
  line-height:1.6;
}

.catalog-filter-box{
  background:#fff;
  border:1px solid #e2e8f0;
  border-radius:18px;
  padding:18px;
  margin-bottom:30px;

  display:grid;
  grid-template-columns:1.4fr 1fr 1fr;
  gap:16px;

  box-shadow:0 8px 25px rgba(0,0,0,.04);
}

.filter-group label{
  display:block;
  font-size:13px;
  font-weight:700;
  color:#475569;
  margin-bottom:8px;
}

.filter-group input,
.filter-group select{
  width:100%;
  height:46px;
  border:1px solid #cbd5e1;
  border-radius:12px;
  background:#f8fafc;
  padding:0 14px;
  font-size:14px;
  color:#334155;
  outline:none;
}

.filter-group input:focus,
.filter-group select:focus{
  border-color:#4f46e5;
  background:#fff;
}

.filter-input-icon{
  position:relative;
}

.filter-input-icon i{
  position:absolute;
  left:14px;
  top:50%;
  transform:translateY(-50%);
  color:#94a3b8;
  font-size:14px;
}

.filter-input-icon input{
  padding-left:40px;
}

@media(max-width:768px){
  .catalog-page-section{
    padding:35px 16px;
  }

  .catalog-page-header h1{
    font-size:28px;
  }

  .catalog-filter-box{
    grid-template-columns:1fr;
  }
}

.toy-image-placeholder {

    width: 100%;
    height: 240px;

    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;

    gap: 12px;

    border-radius: 18px;

    background:
        linear-gradient(
            145deg,
            #fafafa,
            #f2f2f2
        );

    border: 2px dashed #d9d9d9;

    transition: .3s;
}

.card:hover .toy-image-placeholder {

    border-color: #4a90e2;

    background:
        linear-gradient(
            145deg,
            #ffffff,
            #f7fbff
        );
}

.placeholder-icon{

    width:72px;
    height:72px;

    border-radius:50%;

    display:flex;
    justify-content:center;
    align-items:center;

    background:#ffffff;

    box-shadow:
        0 10px 25px rgba(0,0,0,.08);
}

.placeholder-icon i{

    font-size:34px;

    color:#8b8b8b;
}

.toy-image-placeholder strong{

    font-size:18px;
    font-weight:700;

    color:#444;
}

.toy-image-placeholder small{

    font-size:14px;

    color:#888;
}