
:root{
  --navy:#171438;--purple:#6f2bd3;--purple-dark:#5320ae;--pink:#f2146b;--pink-soft:#fff0f6;
  --blue:#1999ed;--green:#12b83e;--yellow:#ffd322;--ink:#19162f;--muted:#74748a;--line:#e9e7ef;
  --surface:#fff;--page:#fff;--shadow:0 9px 28px rgba(28,20,67,.11);--shadow-soft:0 4px 15px rgba(28,20,67,.08)
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--page);color:var(--ink);font-family:Nunito,Arial,sans-serif;-webkit-font-smoothing:antialiased}
body.modal-open{overflow:hidden}
button,input,select{font:inherit}
button,a{-webkit-tap-highlight-color:transparent}
button{cursor:pointer}
img{display:block;max-width:100%}
a{color:inherit}
[hidden]{display:none!important}
.catalog-header{height:74px;background:rgba(255,255,255,.97);position:sticky;top:0;z-index:80;border-bottom:1px solid #f2eff7;box-shadow:0 4px 16px rgba(33,22,78,.05)}
.catalog-header-inner{width:min(1120px,calc(100% - 30px));height:100%;margin:auto;display:flex;align-items:center;justify-content:space-between}
.catalog-logo{text-decoration:none}.catalog-logo img{width:150px;height:58px;object-fit:contain}
.header-wa{display:flex;align-items:center;gap:7px;text-decoration:none;background:var(--green);color:#fff;border-radius:999px;padding:10px 16px;font-size:12px;font-weight:900;box-shadow:0 6px 16px rgba(18,184,62,.2)}
.wa-icon{width:24px;height:24px;display:grid;place-items:center;color:#fff;flex:0 0 auto}
.wa-icon svg{width:100%;height:100%;display:block}
.catalog-intro{padding:38px 16px 16px;background:#fff;position:relative;overflow:hidden}
.catalog-intro:before,.catalog-intro:after{content:'';position:absolute;border-radius:50%;filter:blur(.2px);opacity:.22;pointer-events:none}
.catalog-intro:before{width:9px;height:9px;background:var(--pink);left:8%;top:24%}.catalog-intro:after{width:10px;height:10px;background:var(--yellow);right:9%;top:18%}
.catalog-intro-inner{width:min(1120px,100%);margin:auto;text-align:center}
.catalog-intro h1{font:800 clamp(34px,5.4vw,58px)/.95 'Baloo 2',sans-serif;margin:0;color:var(--pink);letter-spacing:-1.2px}.catalog-intro h1 span{color:#35116d}
.catalog-intro>div>p{margin:8px 0 24px;font-size:16px;font-weight:800}.catalog-intro p strong{color:var(--pink)}
.search-help-row{display:grid;grid-template-columns:minmax(0,1fr) 188px;gap:18px;max-width:920px;margin:0 auto}
.search-box{min-height:58px;border:1px solid #e9e5ef;background:#fff;border-radius:999px;box-shadow:var(--shadow-soft);display:flex;align-items:center;padding:0 22px;gap:12px;color:var(--purple)}
.search-box>span{font-size:33px;line-height:1;transform:rotate(-15deg)}
.search-box input{width:100%;height:54px;border:0;outline:0;background:transparent;color:var(--ink);font-size:14px;font-weight:700}.search-box input::placeholder{color:#9d9baa}
.help-choice{min-height:58px;border:1px solid #f0c746;background:#fff9e5;border-radius:28px;display:flex;align-items:center;justify-content:center;gap:9px;text-decoration:none;font-size:12px;font-weight:900;line-height:1.15;box-shadow:var(--shadow-soft)}
.catalog-section{padding:12px 0 90px;background:#fff}.catalog-container{width:min(1120px,calc(100% - 30px));margin:auto}
.filters{display:flex;gap:10px;overflow-x:auto;padding:8px 3px 14px;scrollbar-width:none}.filters::-webkit-scrollbar{display:none}
.filter-btn{flex:0 0 auto;min-height:54px;border:1px solid #ece8f1;background:#fff;border-radius:15px;padding:9px 15px;display:flex;align-items:center;gap:8px;color:var(--ink);font-size:12px;font-weight:900;box-shadow:var(--shadow-soft)}
.filter-btn span{font-size:19px}.filter-btn.active{color:var(--pink);border-color:var(--pink);background:#fff7fa;box-shadow:0 5px 15px rgba(242,20,107,.12)}
.catalog-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:10px 3px 18px}.result-count{margin:0;font-size:16px;font-weight:900}.result-count strong{color:var(--pink);font-size:20px}
.sort-control{display:flex;align-items:center;gap:9px;font-size:12px;font-weight:700;white-space:nowrap}.sort-control select{height:42px;border:1px solid #e5e1ec;border-radius:999px;background:#fff;padding:0 36px 0 16px;color:var(--ink);font-size:12px;font-weight:900;outline:none;box-shadow:var(--shadow-soft)}
.empty-state{padding:38px;text-align:center;border:1px dashed #ddd6e8;border-radius:20px;color:var(--muted)}.empty-state strong,.empty-state span{display:block}.empty-state strong{color:var(--navy);margin-bottom:5px}
.catalog-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.toy-card{position:relative;background:#fff;border:1px solid #ece9f0;border-radius:20px;overflow:hidden;box-shadow:var(--shadow-soft);transition:transform .18s ease,box-shadow .18s ease}.toy-card:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.toy-card.is-hidden{display:none}
.card-image-button,.toy-name{border:0;background:transparent;padding:0}.card-image-button{display:block;width:100%}.toy-image{height:205px;position:relative;background:linear-gradient(180deg,#f4fbff,#fff);overflow:hidden}.toy-image img{width:100%;height:100%;object-fit:contain;padding:4px}
.toy-badge{position:absolute;left:8px;top:8px;z-index:2;background:var(--pink);color:#fff;border-radius:999px;padding:6px 9px;font-size:9px;font-weight:900;box-shadow:0 4px 10px rgba(242,20,107,.2)}
.quick-favorite{position:absolute;right:8px;top:8px;z-index:5;width:34px;height:34px;border-radius:50%;border:1px solid #e4dbef;background:rgba(255,255,255,.95);color:var(--purple);font-size:23px;line-height:1;box-shadow:0 3px 10px rgba(0,0,0,.08)}
.quick-favorite[aria-pressed="true"]{background:var(--pink);color:#fff;border-color:var(--pink)}
.toy-card-body{padding:12px 12px 13px;text-align:center}.toy-name{display:block;width:100%;min-height:43px;color:var(--ink);font:800 18px/1.06 'Baloo 2',sans-serif;text-align:center}.toy-name:hover{color:var(--purple)}
.card-actions{display:grid;grid-template-columns:39px minmax(0,1fr);gap:8px;margin-top:10px}.select-card{height:38px;border:1.5px solid var(--pink);border-radius:11px;background:#fff;color:var(--pink);font-size:23px;font-weight:900}.select-card[aria-pressed="true"]{background:var(--pink);color:#fff}.details-btn{height:38px;border:0;border-radius:10px;background:linear-gradient(135deg,#7d35d5,#5721b3);color:#fff;font-size:10px;font-weight:900;letter-spacing:.1px}
.catalog-footer{text-align:center;background:#06265d;color:#fff;padding:38px 20px 24px}.catalog-footer img{width:180px;margin:0 auto 14px}.catalog-footer p{max-width:500px;margin:6px auto;font-size:12px;line-height:1.5}.catalog-footer .footer-contact{font-weight:900}.catalog-footer small{display:block;margin-top:18px;padding-top:13px;border-top:1px solid rgba(255,255,255,.14);font-size:10px;color:#b9c8df}
.modal-backdrop,.selection-drawer-backdrop{position:fixed;inset:0;z-index:200;background:rgba(19,13,39,.45);backdrop-filter:blur(2px);display:grid;place-items:center;padding:18px;animation:fadeIn .16s ease}
.detail-modal{width:min(610px,100%);max-height:min(88vh,820px);background:#fff;border-radius:26px;box-shadow:0 28px 80px rgba(18,12,42,.25);position:relative;overflow:hidden;display:flex;flex-direction:column;animation:modalIn .2s ease;outline:none}
.modal-close{position:absolute;right:12px;top:12px;z-index:4;width:38px;height:38px;border:0;border-radius:50%;background:#f6f4f8;color:var(--ink);font-size:28px;line-height:1}
.modal-scroll{overflow:auto;padding:24px 24px 18px}.modal-scroll h2{margin:7px 45px 13px 0;font:800 31px/1 'Baloo 2',sans-serif;color:var(--ink)}
.modal-badge{display:inline-flex;background:var(--pink);color:#fff;border-radius:999px;padding:7px 11px;font-size:10px;font-weight:900}.modal-image-wrap{height:340px;border-radius:18px;overflow:hidden;background:#f4fbff;border:1px solid #edf0f5}.modal-image-wrap img{width:100%;height:100%;object-fit:contain}
.modal-details{display:grid;gap:10px;padding:17px 2px 8px}.detail-row{display:grid;grid-template-columns:27px minmax(0,1fr);gap:9px;align-items:start}.detail-icon{font-size:18px}.detail-row strong{display:block;font-size:13px;margin-bottom:1px}.detail-row span{font-size:13px;color:#3a3850;line-height:1.35}
.modal-price-card{display:grid;grid-template-columns:28px minmax(0,1fr);gap:10px;align-items:start;margin:8px 0 12px;padding:12px 14px;border:1.5px solid var(--pink);border-radius:13px;background:#fff}.modal-price-icon{color:var(--pink);font-size:22px;line-height:1.1;font-weight:900}.modal-price-copy{display:flex;flex-direction:column;align-items:flex-start}.modal-price-copy strong{font-size:13px;color:var(--ink);margin-bottom:2px}.modal-price-copy small{font-size:12px;line-height:1.25;color:#666277}.modal-price-copy b{font:800 26px/1.05 'Baloo 2',sans-serif;color:var(--pink);margin:2px 0}
.modal-actions{display:grid;gap:9px;margin-top:10px}.modal-select,.drawer-whatsapp{min-height:48px;border:0;border-radius:13px;background:linear-gradient(135deg,#ff1b75,#ee0063);color:#fff;font-weight:900;font-size:13px}.modal-select[aria-pressed="true"]{background:linear-gradient(135deg,#6e2bd2,#4c1aa5)}.modal-whatsapp{min-height:45px;border:1.5px solid var(--green);border-radius:13px;color:var(--green);display:flex;align-items:center;justify-content:center;text-decoration:none;font-size:12px;font-weight:900}
.modal-nav{min-height:65px;border-top:1px solid #ece9f0;background:#fbfaff;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;padding:10px 18px}.modal-nav button{height:42px;border:1.5px solid var(--purple);border-radius:12px;background:#fff;color:var(--purple);font-size:11px;font-weight:900}.modal-nav span{font-size:11px;font-weight:900;color:#6e6980}.modal-nav button:disabled{opacity:.35;cursor:not-allowed}
.selection-drawer-backdrop{place-items:end center;padding:0}.selection-drawer{width:min(620px,100%);max-height:78vh;background:#fff;border-radius:24px 24px 0 0;box-shadow:0 -18px 50px rgba(22,14,46,.22);padding:18px;outline:none;animation:drawerIn .22s ease}.drawer-head{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #eeeaf2;padding-bottom:11px}.drawer-head h2{margin:0;font:800 24px 'Baloo 2',sans-serif;color:var(--navy)}.drawer-head button{width:36px;height:36px;border:0;border-radius:50%;font-size:25px;background:#f5f2f7}.drawer-list{max-height:45vh;overflow:auto;padding:8px 0}.drawer-item{display:grid;grid-template-columns:58px 1fr 36px;align-items:center;gap:10px;padding:9px 0;border-bottom:1px solid #f0edf4}.drawer-item img{width:58px;height:58px;object-fit:contain;border-radius:10px;background:#f5fbff}.drawer-item strong{font-size:13px}.drawer-remove{width:34px;height:34px;border:0;border-radius:50%;background:#fff0f6;color:var(--pink);font-size:20px}.drawer-whatsapp{width:100%;margin-top:12px}
.toast{position:fixed;left:50%;bottom:102px;transform:translateX(-50%);z-index:300;max-width:calc(100% - 30px);background:#211a38;color:#fff;border-radius:999px;padding:11px 17px;font-size:12px;font-weight:800;box-shadow:0 8px 25px rgba(0,0,0,.2)}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}@keyframes modalIn{from{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:none}}@keyframes barIn{from{opacity:0;transform:translate(-50%,18px)}to{opacity:1;transform:translate(-50%,0)}}@keyframes drawerIn{from{transform:translateY(100%)}to{transform:none}}
@media(max-width:900px){.catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){
  .catalog-header{height:66px}.catalog-header-inner{width:calc(100% - 22px)}.catalog-logo img{width:132px;height:52px}.header-wa{width:42px;height:42px;padding:0;border-radius:50%;justify-content:center}.header-wa>span:last-child{display:none}.header-wa .wa-icon{width:24px;height:24px}
  .catalog-intro{padding:22px 11px 10px}.catalog-intro h1{font-size:34px;letter-spacing:-.7px}.catalog-intro>div>p{font-size:13px;margin:5px 0 18px}.search-help-row{grid-template-columns:minmax(0,1fr) 112px;gap:8px}.search-box{min-height:51px;padding:0 14px}.search-box>span{font-size:27px}.search-box input{height:48px;font-size:12px}.help-choice{min-height:51px;border-radius:19px;font-size:9px;padding:0 6px;gap:4px}
  .catalog-section{padding:5px 0 155px}.catalog-container{width:calc(100% - 18px)}.filters{gap:7px;padding:7px 1px 12px}.filter-btn{min-height:47px;border-radius:12px;padding:7px 10px;font-size:9.5px;gap:5px}.filter-btn span{font-size:16px}
  .catalog-toolbar{margin:8px 1px 14px;align-items:flex-end}.result-count{font-size:12px}.result-count strong{font-size:16px}.sort-control{font-size:9px;gap:5px}.sort-control select{max-width:137px;height:36px;padding:0 26px 0 10px;font-size:9px}
  .catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.toy-card{border-radius:16px}.toy-image{height:152px}.toy-image img{padding:2px}.toy-badge{left:5px;top:5px;padding:5px 6px;font-size:7px;max-width:78%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.quick-favorite{right:5px;top:5px;width:29px;height:29px;font-size:19px}.toy-card-body{padding:8px 7px 9px}.toy-name{min-height:36px;font-size:14.5px;line-height:1.04}.card-actions{grid-template-columns:34px 1fr;gap:5px;margin-top:7px}.select-card,.details-btn{height:34px}.select-card{font-size:20px;border-radius:9px}.details-btn{font-size:8.4px;border-radius:9px}
  .catalog-footer{padding-bottom:130px}.catalog-footer img{width:160px}
  .modal-price-card{padding:10px 12px;margin:7px 0 10px}.modal-price-copy b{font-size:24px}.modal-price-copy strong{font-size:12px}.modal-price-copy small{font-size:11px}
  .modal-backdrop{padding:9px;align-items:end}.detail-modal{max-height:91vh;border-radius:23px 23px 10px 10px}.modal-scroll{padding:19px 15px 13px}.modal-scroll h2{font-size:25px;margin-right:40px}.modal-close{right:9px;top:9px}.modal-image-wrap{height:260px}.modal-details{padding-top:13px}.detail-row strong,.detail-row span{font-size:12px}.modal-nav{padding:9px 12px;min-height:58px}.modal-nav button{height:39px;font-size:9px}.modal-nav span{font-size:9px}.modal-select{font-size:11px}.modal-whatsapp{font-size:10px}
  .toast{bottom:128px;font-size:10px}
}
@media(max-width:360px){.catalog-intro h1{font-size:31px}.search-help-row{grid-template-columns:1fr 98px}.toy-image{height:135px}.toy-name{font-size:13.2px}.details-btn{font-size:7.5px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}


/* =========================================================
   BARRA FIXA — MINHA SELEÇÃO
   Versão compacta aprovada: carrinho + miniaturas + WhatsApp
   ========================================================= */

.selection-bar{
  position:fixed;
  left:50%;
  bottom:max(10px,env(safe-area-inset-bottom));
  transform:translateX(-50%);
  z-index:150;
  width:min(1060px,calc(100% - 22px));
  min-height:94px;
  padding:13px 18px;
  border-radius:32px;
  background:linear-gradient(100deg,#4b1cad 0%,#6422c0 54%,#4c1cac 100%);
  color:#fff;
  box-shadow:0 14px 38px rgba(67,26,145,.34);
  display:grid;
  grid-template-columns:76px minmax(190px,1fr) minmax(285px,380px);
  align-items:center;
  justify-content:center;
  gap:20px;
}

.selection-summary{
  width:72px;
  height:72px;
  padding:0;
  margin:0;
  border:0;
  background:transparent;
  display:grid;
  place-items:center;
  cursor:pointer;
}

.selection-cart{
  width:72px;
  height:72px;
  border-radius:50%;
  background:linear-gradient(145deg,#ff317d,#ed1666);
  display:grid;
  place-items:center;
  position:relative;
  color:#fff;
  box-shadow:0 7px 17px rgba(239,31,111,.26);
}

.selection-cart svg{
  width:36px;
  height:36px;
}

.selection-cart b{
  position:absolute;
  right:-3px;
  top:-10px;
  min-width:29px;
  height:29px;
  padding:0 7px;
  border-radius:999px;
  background:#ffd31a;
  color:#151021;
  display:grid;
  place-items:center;
  font-size:14px;
  font-weight:900;
  box-shadow:0 3px 8px rgba(0,0,0,.16);
}

.selection-count-accessible{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;
  border:0!important;
}

.selection-thumbs{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  min-width:0;
  overflow:visible;
}

.selection-thumb{
  position:relative;
  width:68px;
  height:68px;
  min-width:68px;
  border-radius:12px;
  border:4px solid #fff;
  background:#fff;
  overflow:visible;
  box-shadow:0 3px 10px rgba(0,0,0,.18);
}

.selection-thumb img{
  width:100%;
  height:100%;
  display:block;
  object-fit:contain;
  border-radius:8px;
  background:#fff;
}

.selection-thumb-remove{
  position:absolute;
  right:-10px;
  top:-11px;
  width:25px;
  height:25px;
  padding:0;
  border:0;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:#ff2a73;
  color:#fff;
  font-size:17px;
  line-height:1;
  font-weight:900;
  cursor:pointer;
  box-shadow:0 3px 7px rgba(0,0,0,.17);
}

.selection-more{
  min-width:42px;
  height:42px;
  padding:0 8px;
  border-radius:999px;
  background:rgba(255,255,255,.17);
  display:grid;
  place-items:center;
  font-size:11px;
  font-weight:900;
}

.selection-whatsapp{
  min-height:70px;
  border:0;
  border-radius:26px;
  padding:10px 20px;
  background:linear-gradient(135deg,#16c53c 0%,#05ab30 100%);
  color:#fff;
  display:grid;
  grid-template-columns:44px 1fr 26px;
  align-items:center;
  gap:10px;
  text-align:left;
  font-size:14px;
  line-height:1.18;
  font-weight:900;
  cursor:pointer;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.18);
}

.selection-wa-icon{
  width:42px;
  height:42px;
  border:3px solid #fff;
  border-radius:50%;
  display:grid;
  place-items:center;
  font-size:0;
  position:relative;
}

.selection-wa-icon::before{
  content:"☎";
  font-size:23px;
  line-height:1;
  transform:rotate(-18deg);
}

.selection-wa-arrow{
  font-size:30px;
  line-height:1;
  text-align:right;
}

body.has-selection{
  padding-bottom:138px;
}

/* Tablet */
@media(max-width:900px){
  .selection-bar{
    grid-template-columns:66px minmax(165px,1fr) minmax(245px,320px);
    gap:14px;
    padding:11px 14px;
  }

  .selection-summary,
  .selection-cart{
    width:64px;
    height:64px;
  }

  .selection-cart svg{
    width:32px;
    height:32px;
  }

  .selection-thumb{
    width:58px;
    height:58px;
    min-width:58px;
  }

  .selection-whatsapp{
    min-height:64px;
    font-size:12px;
    grid-template-columns:38px 1fr 22px;
    padding:9px 14px;
  }

  .selection-wa-icon{
    width:37px;
    height:37px;
  }
}

/* Mobile principal */
@media(max-width:700px){
  body.has-selection{
    padding-bottom:124px!important;
  }

  .selection-bar{
    left:8px;
    right:8px;
    bottom:max(7px,env(safe-area-inset-bottom));
    transform:none;
    width:auto;
    max-width:none;
    min-height:86px;
    padding:9px 10px;
    border-radius:27px;
    grid-template-columns:56px minmax(126px,1fr) minmax(146px,1.15fr);
    gap:9px;
  }

  .selection-summary{
    width:54px;
    height:54px;
  }

  .selection-cart{
    width:54px;
    height:54px;
  }

  .selection-cart svg{
    width:28px;
    height:28px;
  }

  .selection-cart b{
    min-width:23px;
    height:23px;
    right:-2px;
    top:-8px;
    padding:0 5px;
    font-size:11px;
  }

  .selection-thumbs{
    justify-content:center;
    gap:7px;
  }

  .selection-thumb{
    width:42px;
    height:52px;
    min-width:42px;
    border-width:3px;
    border-radius:8px;
  }

  .selection-thumb img{
    border-radius:5px;
  }

  .selection-thumb-remove{
    right:-8px;
    top:-9px;
    width:20px;
    height:20px;
    font-size:13px;
  }

  .selection-more{
    min-width:30px;
    height:30px;
    padding:0 5px;
    font-size:8px;
  }

  .selection-whatsapp{
    min-height:58px;
    border-radius:21px;
    padding:7px 9px;
    grid-template-columns:30px 1fr 18px;
    gap:6px;
    font-size:9.5px;
    line-height:1.14;
  }

  .selection-wa-icon{
    width:30px;
    height:30px;
    border-width:2px;
  }

  .selection-wa-icon::before{
    font-size:17px;
  }

  .selection-wa-arrow{
    font-size:21px;
  }
}

/* 390px / 375px / 360px */
@media(max-width:430px){
  .selection-bar{
    left:6px;
    right:6px;
    min-height:84px;
    padding:8px;
    grid-template-columns:52px minmax(122px,1fr) minmax(140px,1.14fr);
    gap:7px;
  }

  .selection-summary,
  .selection-cart{
    width:50px;
    height:50px;
  }

  .selection-cart svg{
    width:26px;
    height:26px;
  }

  .selection-thumbs{
    gap:6px;
  }

  .selection-thumb{
    width:39px;
    height:49px;
    min-width:39px;
  }

  .selection-whatsapp{
    min-height:56px;
    padding:6px 7px;
    font-size:8.8px;
    grid-template-columns:28px 1fr 17px;
  }

  .selection-wa-icon{
    width:28px;
    height:28px;
  }
}

@media(max-width:360px){
  .selection-bar{
    grid-template-columns:47px minmax(105px,1fr) minmax(126px,1.12fr);
    gap:5px;
    padding:7px;
  }

  .selection-summary,
  .selection-cart{
    width:45px;
    height:45px;
  }

  .selection-thumb{
    width:34px;
    height:45px;
    min-width:34px;
  }

  .selection-thumbs{
    gap:5px;
  }

  .selection-whatsapp{
    min-height:52px;
    font-size:7.8px;
    grid-template-columns:24px 1fr 15px;
    gap:4px;
    padding:5px 6px;
  }

  .selection-wa-icon{
    width:24px;
    height:24px;
  }

  .selection-wa-icon::before{
    font-size:14px;
  }

  .selection-wa-arrow{
    font-size:18px;
  }
}


/* =========================================================
   AJUSTE FINAL MOBILE REAL — 320 / 360 / 375 / 390 / 412 / 430
   Corrige corte lateral da barra e mantém cards no tamanho normal.
   ========================================================= */
html,
body{
  max-width:100%;
  overflow-x:hidden;
}

@media (max-width:700px){
  .catalog-header-inner,
  .catalog-intro-inner,
  .catalog-container{
    max-width:100% !important;
  }

  .header-wa{
    flex:0 0 44px !important;
    width:44px !important;
    height:44px !important;
    min-width:44px !important;
    padding:0 !important;
  }

  .header-wa .wa-icon{
    width:29px !important;
    height:29px !important;
  }

  /* Garante que a grade não encolha por causa da barra fixa */
  .catalog-grid{
    width:100% !important;
    min-width:0 !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:10px !important;
  }

  .toy-card{
    min-width:0 !important;
    width:100% !important;
  }

  .toy-image{
    height:clamp(145px,39vw,172px) !important;
  }

  .toy-name{
    font-size:clamp(13.5px,3.8vw,15px) !important;
  }

  body.has-selection{
    padding-bottom:120px !important;
  }

  .selection-bar{
    box-sizing:border-box !important;
    left:6px !important;
    right:6px !important;
    bottom:max(7px,env(safe-area-inset-bottom)) !important;
    transform:none !important;

    width:auto !important;
    max-width:calc(100vw - 12px) !important;
    min-width:0 !important;
    min-height:82px !important;

    margin:0 !important;
    padding:8px 7px !important;

    display:grid !important;
    grid-template-columns:48px minmax(0,1fr) 136px !important;
    align-items:center !important;
    gap:7px !important;

    border-radius:26px !important;
    overflow:hidden !important;
  }

  .selection-summary{
    width:48px !important;
    min-width:0 !important;
    height:48px !important;
  }

  .selection-cart{
    width:48px !important;
    height:48px !important;
    min-width:48px !important;
  }

  .selection-cart svg{
    width:25px !important;
    height:25px !important;
  }

  .selection-cart b{
    top:-7px !important;
    right:-2px !important;
    min-width:22px !important;
    height:22px !important;
    font-size:11px !important;
  }

  .selection-thumbs{
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:5px !important;
    overflow:visible !important;
  }

  .selection-thumb{
    flex:0 1 40px !important;
    width:40px !important;
    min-width:0 !important;
    max-width:40px !important;
    height:50px !important;
    border:3px solid #fff !important;
    border-radius:8px !important;
  }

  .selection-thumb img{
    width:100% !important;
    height:100% !important;
    object-fit:contain !important;
  }

  .selection-thumb-remove{
    top:-7px !important;
    right:-6px !important;
    width:18px !important;
    height:18px !important;
    font-size:12px !important;
  }

  .selection-more{
    flex:0 0 27px !important;
    min-width:27px !important;
    width:27px !important;
    height:27px !important;
    padding:0 !important;
    font-size:8px !important;
  }

  .selection-whatsapp{
    box-sizing:border-box !important;
    width:100% !important;
    min-width:0 !important;
    max-width:136px !important;
    min-height:56px !important;
    padding:6px 7px !important;

    display:grid !important;
    grid-template-columns:26px minmax(0,1fr) 15px !important;
    gap:5px !important;

    border-radius:19px !important;
    font-size:8.5px !important;
    line-height:1.12 !important;
    overflow:hidden !important;
  }

  .selection-whatsapp strong{
    min-width:0 !important;
    white-space:normal !important;
    overflow-wrap:normal !important;
    word-break:normal !important;
  }

  .selection-wa-icon{
    width:26px !important;
    height:26px !important;
    min-width:26px !important;
  }

  .selection-wa-icon::before{
    font-size:15px !important;
  }

  .selection-wa-arrow{
    width:15px !important;
    min-width:15px !important;
    font-size:17px !important;
    text-align:center !important;
  }
}

/* Realme 8 Pro e celulares próximos de 360px */
@media (max-width:380px){
  .catalog-container{
    width:calc(100% - 14px) !important;
  }

  .catalog-grid{
    gap:8px !important;
  }

  .toy-image{
    height:145px !important;
  }

  .toy-card-body{
    padding:8px 6px 9px !important;
  }

  .selection-bar{
    left:4px !important;
    right:4px !important;
    max-width:calc(100vw - 8px) !important;
    grid-template-columns:46px minmax(0,1fr) 132px !important;
    gap:5px !important;
    padding:7px 6px !important;
  }

  .selection-summary,
  .selection-cart{
    width:46px !important;
    height:46px !important;
  }

  .selection-thumb{
    flex-basis:37px !important;
    width:37px !important;
    max-width:37px !important;
    height:48px !important;
  }

  .selection-thumbs{
    gap:4px !important;
  }

  .selection-whatsapp{
    max-width:132px !important;
    min-height:54px !important;
    font-size:8px !important;
    padding:5px 5px !important;
    grid-template-columns:24px minmax(0,1fr) 13px !important;
    gap:4px !important;
  }

  .selection-wa-icon{
    width:24px !important;
    height:24px !important;
    min-width:24px !important;
  }

  .selection-wa-arrow{
    width:13px !important;
    min-width:13px !important;
    font-size:16px !important;
  }
}

/* 320px: preserva os 2 cards e evita qualquer corte horizontal */
@media (max-width:340px){
  .selection-bar{
    grid-template-columns:43px minmax(0,1fr) 122px !important;
    padding:6px 5px !important;
  }

  .selection-summary,
  .selection-cart{
    width:43px !important;
    height:43px !important;
  }

  .selection-thumb{
    flex-basis:33px !important;
    width:33px !important;
    max-width:33px !important;
    height:44px !important;
  }

  .selection-whatsapp{
    max-width:122px !important;
    font-size:7.4px !important;
    grid-template-columns:22px minmax(0,1fr) 12px !important;
  }

  .selection-wa-icon{
    width:22px !important;
    height:22px !important;
    min-width:22px !important;
  }
}


/* =========================================================
   AJUSTES CONSOLIDADOS — TOPO / CARDS / PROMOÇÃO
   ========================================================= */

/* Logo maior + menu à direita */
.catalog-header-inner{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
}

.catalog-logo{
  display:flex!important;
  align-items:center!important;
  margin:0!important;
}

.catalog-logo img{
  width:172px!important;
  height:66px!important;
  object-fit:contain!important;
}

.header-wa{
  display:none!important;
}

.menu-hamburguer{
  width:46px;
  height:46px;
  min-width:46px;
  margin-left:auto!important;
  margin-right:0!important;
  padding:0;
  border:0;
  border-radius:50%;
  background:#fff;
  display:flex!important;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:5px;
  box-shadow:0 5px 18px rgba(6,41,103,.10);
}

.menu-hamburguer span{
  display:block;
  width:24px;
  height:3px;
  border-radius:999px;
  background:var(--pink);
}

/* Fica somente o coração ao lado de VER DETALHES */
.quick-favorite{
  display:none!important;
}

/* =========================================================
   PROMOÇÃO 20% — REFERÊNCIA ROXA
   ========================================================= */

.promo-semana{
  padding:34px 12px 46px;
  background:#fff;
}

.promo-semana-card{
  width:min(920px,100%);
  margin:0 auto;
  padding:32px 28px 24px;
  position:relative;
  overflow:hidden;
  border-radius:32px;
  color:#fff;
  text-align:center;
  background:
    radial-gradient(circle at 16% 14%,rgba(255,35,128,.42),transparent 18%),
    radial-gradient(circle at 86% 18%,rgba(70,37,224,.58),transparent 24%),
    radial-gradient(circle at 52% 62%,rgba(157,32,220,.35),transparent 35%),
    linear-gradient(150deg,#2c057e 0%,#4c0aa4 46%,#26026d 100%);
  box-shadow:0 18px 42px rgba(56,7,127,.30);
  display:grid;
  grid-template-columns:minmax(210px,.78fr) minmax(0,1.22fr);
  grid-template-areas:
    "person content"
    "benefits benefits"
    "text text"
    "cta cta"
    "rule rule";
  align-items:end;
  gap:18px 22px;
}

.promo-semana-card::before,
.promo-semana-card::after{
  content:"";
  position:absolute;
  width:210px;
  height:210px;
  border-radius:50%;
  filter:blur(2px);
  pointer-events:none;
}

.promo-semana-card::before{
  left:-100px;
  top:35%;
  background:rgba(103,30,205,.28);
}

.promo-semana-card::after{
  right:-100px;
  bottom:-60px;
  background:rgba(247,20,107,.16);
}

.promo-personagem{
  grid-area:person;
  min-height:370px;
  position:relative;
  z-index:2;
  display:flex;
  align-items:flex-end;
  justify-content:center;
}

.promo-personagem img{
  width:min(285px,100%);
  max-height:370px;
  object-fit:contain;
  object-position:center bottom;
  filter:drop-shadow(0 16px 14px rgba(0,0,0,.30));
}

.promo-balao{
  position:absolute;
  z-index:-1;
  width:46px;
  height:60px;
  border-radius:52% 52% 48% 48%;
  box-shadow:inset -8px -8px 12px rgba(0,0,0,.10);
}

.promo-balao::after{
  content:"";
  position:absolute;
  left:50%;
  top:58px;
  width:2px;
  height:62px;
  border-radius:999px;
  background:rgba(255,255,255,.55);
  transform:rotate(8deg);
  transform-origin:top;
}

.promo-balao-rosa{
  right:8%;
  top:7%;
  background:linear-gradient(145deg,#ff6cac,#f31369);
}

.promo-balao-roxo{
  right:-4%;
  top:22%;
  width:34px;
  height:46px;
  background:linear-gradient(145deg,#a341f0,#6920bd);
}

.promo-conteudo{
  grid-area:content;
  position:relative;
  z-index:3;
  align-self:center;
}

.promo-chamada{
  margin-bottom:10px;
  font:900 clamp(25px,4vw,41px)/.95 "Baloo 2",sans-serif;
  letter-spacing:.2px;
  text-shadow:0 4px 0 rgba(30,0,90,.30);
}

.promo-faixa{
  width:min(390px,92%);
  margin:0 auto 9px;
  padding:7px 22px 9px;
  position:relative;
  background:#ffd21c;
  color:#3b087f;
  font:900 clamp(21px,3vw,31px)/1 "Baloo 2",sans-serif;
  transform:skew(-7deg);
  box-shadow:0 6px 0 rgba(134,78,0,.20);
}

.promo-faixa::before,
.promo-faixa::after{
  content:"";
  position:absolute;
  top:0;
  width:28px;
  height:100%;
  background:#ffd21c;
}

.promo-faixa::before{left:-14px;clip-path:polygon(100% 0,100% 100%,0 70%,45% 50%,0 30%)}
.promo-faixa::after{right:-14px;clip-path:polygon(0 0,0 100%,100% 70%,55% 50%,100% 30%)}

.promo-faixa{
  transform:skew(-7deg);
}

.promo-faixa::first-line{
  transform:skew(7deg);
}

.promo-desconto{
  margin:4px 0 9px;
  line-height:.78;
}

.promo-desconto strong{
  display:block;
  color:#fff;
  font:900 clamp(88px,15vw,154px)/.72 "Baloo 2",sans-serif;
  letter-spacing:-6px;
  -webkit-text-stroke:3px #ff2680;
  text-shadow:
    0 8px 0 #f01368,
    0 13px 0 rgba(37,0,100,.42),
    0 18px 22px rgba(0,0,0,.28);
}

.promo-desconto span{
  display:block;
  margin-top:14px;
  color:#ffd21c;
  font:900 clamp(28px,5vw,47px)/.9 "Baloo 2",sans-serif;
  text-shadow:0 4px 0 #e74100,0 7px 0 rgba(0,0,0,.18);
}

.promo-periodo{
  width:min(430px,94%);
  margin:16px auto 15px;
  padding:10px 16px;
  border-radius:999px;
  background:linear-gradient(180deg,#ff3d96,#ed166c);
  color:#fff;
  font:900 clamp(16px,2.6vw,24px)/1 "Baloo 2",sans-serif;
  box-shadow:0 6px 0 rgba(123,0,69,.20);
}

.promo-dias{
  display:flex;
  justify-content:center;
  gap:9px;
  flex-wrap:nowrap;
}

.promo-dia{
  width:76px;
  min-height:70px;
  padding:13px 5px 6px;
  position:relative;
  border-radius:9px;
  background:#fff;
  color:#5b208d;
  box-shadow:0 5px 0 rgba(17,0,80,.20);
}

.promo-dia::before,
.promo-dia::after{
  content:"";
  position:absolute;
  top:-8px;
  width:7px;
  height:18px;
  border-radius:999px;
  background:#dad5e4;
}
.promo-dia::before{left:18px}
.promo-dia::after{right:18px}

.promo-dia b{
  display:block;
  font:900 21px/1 "Baloo 2",sans-serif;
}

.promo-dia span{
  display:block;
  margin-top:3px;
  font-size:16px;
}

.promo-dia-seg{border-top:11px solid #8e43d6}
.promo-dia-ter{border-top:11px solid #f05692;color:#e64a82}
.promo-dia-qua{border-top:11px solid #6acb3b;color:#45a728}
.promo-dia-qui{border-top:11px solid #ff8b24;color:#e66f0b}

.promo-beneficios{
  grid-area:benefits;
  position:relative;
  z-index:3;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  border:1.5px dashed rgba(255,255,255,.55);
  border-radius:18px;
  overflow:hidden;
}

.promo-beneficios>div{
  min-height:74px;
  padding:12px 10px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
}

.promo-beneficios>div+div{
  border-left:1px solid rgba(255,255,255,.18);
}

.promo-beneficios span{
  font-size:31px;
  line-height:1;
}

.promo-beneficios p{
  margin:0;
  text-align:left;
  font-size:12px;
  line-height:1.25;
  font-weight:900;
}

.promo-texto-final{
  grid-area:text;
  position:relative;
  z-index:3;
  max-width:680px;
  margin:0 auto;
  font-size:15px;
  line-height:1.35;
  font-weight:800;
}

.promo-texto-final strong{
  color:#ffd21c;
}

.promo-cta{
  grid-area:cta;
  width:min(650px,92%);
  min-height:66px;
  margin:0 auto;
  padding:10px 18px 10px 24px;
  position:relative;
  z-index:3;
  border-radius:999px;
  background:linear-gradient(180deg,#ffd827,#ffc800);
  color:#43107e;
  display:grid;
  grid-template-columns:1fr 48px;
  align-items:center;
  gap:8px;
  text-decoration:none;
  font:900 clamp(17px,3vw,28px)/1 "Baloo 2",sans-serif;
  box-shadow:0 8px 0 #e3a700,0 13px 24px rgba(20,0,70,.30);
}

.promo-cta span{
  width:43px;
  height:43px;
  border-radius:50%;
  background:#54219d;
  color:#fff;
  display:grid;
  place-items:center;
  font-size:30px;
  line-height:1;
}

.promo-regra{
  grid-area:rule;
  position:relative;
  z-index:3;
  color:rgba(255,255,255,.88);
  font-size:10px;
  font-weight:700;
}

.promo-confete{
  position:absolute;
  z-index:1;
  width:13px;
  height:13px;
  border-radius:4px;
  transform:rotate(28deg);
}
.promo-confete-1{left:4%;top:8%;background:#ffd21c}
.promo-confete-2{right:6%;top:10%;background:#f52a7c}
.promo-confete-3{left:8%;bottom:20%;background:#5dd1ff}
.promo-confete-4{right:9%;bottom:24%;background:#ffd21c}

/* Mobile — composição vertical parecida com a referência */
@media(max-width:700px){
  .promo-semana{
    padding:24px 7px 34px;
  }

  .promo-semana-card{
    padding:22px 12px 20px;
    border-radius:26px;
    grid-template-columns:34% 66%;
    grid-template-areas:
      "person content"
      "benefits benefits"
      "text text"
      "cta cta"
      "rule rule";
    gap:13px 3px;
  }

  .promo-personagem{
    min-height:300px;
    align-self:end;
  }

  .promo-personagem img{
    width:155%;
    max-width:none;
    max-height:300px;
    transform:translateX(-10%);
  }

  .promo-balao-rosa{
    right:-8%;
    top:4%;
    width:35px;
    height:46px;
  }

  .promo-balao-roxo{
    right:-12%;
    top:21%;
    width:26px;
    height:36px;
  }

  .promo-chamada{
    margin-bottom:7px;
    font-size:clamp(19px,5.9vw,26px);
  }

  .promo-faixa{
    width:87%;
    padding:6px 8px 7px;
    margin-bottom:6px;
    font-size:clamp(16px,5vw,22px);
  }

  .promo-desconto strong{
    font-size:clamp(76px,24vw,108px);
    letter-spacing:-4px;
    -webkit-text-stroke:2px #ff2680;
  }

  .promo-desconto span{
    margin-top:10px;
    font-size:clamp(24px,7vw,34px);
  }

  .promo-periodo{
    width:95%;
    margin:12px auto 12px;
    padding:8px 7px;
    font-size:clamp(12px,3.6vw,16px);
  }

  .promo-dias{
    gap:5px;
  }

  .promo-dia{
    width:48px;
    min-height:51px;
    padding:8px 2px 4px;
    border-radius:6px;
    border-top-width:7px;
  }

  .promo-dia::before,
  .promo-dia::after{
    top:-6px;
    width:4px;
    height:11px;
  }
  .promo-dia::before{left:11px}
  .promo-dia::after{right:11px}

  .promo-dia b{
    font-size:13px;
  }

  .promo-dia span{
    margin-top:1px;
    font-size:10px;
  }

  .promo-beneficios{
    border-radius:13px;
  }

  .promo-beneficios>div{
    min-height:65px;
    padding:8px 4px;
    flex-direction:column;
    gap:3px;
  }

  .promo-beneficios span{
    font-size:22px;
  }

  .promo-beneficios p{
    text-align:center;
    font-size:8px;
    line-height:1.2;
  }

  .promo-texto-final{
    max-width:340px;
    font-size:11px;
    line-height:1.3;
  }

  .promo-cta{
    width:94%;
    min-height:53px;
    padding:8px 8px 8px 15px;
    grid-template-columns:1fr 38px;
    font-size:clamp(13px,4vw,17px);
    box-shadow:0 6px 0 #e3a700,0 10px 18px rgba(20,0,70,.26);
  }

  .promo-cta span{
    width:34px;
    height:34px;
    font-size:23px;
  }

  .promo-regra{
    font-size:8px;
    line-height:1.3;
  }
}

@media(max-width:380px){
  .promo-semana-card{
    grid-template-columns:32% 68%;
    padding-left:8px;
    padding-right:8px;
  }

  .promo-personagem{
    min-height:276px;
  }

  .promo-personagem img{
    max-height:276px;
    width:165%;
    transform:translateX(-14%);
  }

  .promo-chamada{
    font-size:18px;
  }

  .promo-desconto strong{
    font-size:80px;
  }

  .promo-desconto span{
    font-size:25px;
  }

  .promo-dia{
    width:43px;
  }
}

/* =========================================================
   MENU HAMBÚRGUER — CORREÇÃO FINAL
   O menu fica oculto até o clique e abre abaixo do botão.
   ========================================================= */
.catalog-header-inner{
  position:relative!important;
}

.menu-hamburguer{
  position:relative;
  z-index:1002;
  cursor:pointer;
}

.menu-hamburguer span{
  transition:transform .22s ease, opacity .22s ease;
  transform-origin:center;
}

.menu-hamburguer.is-open span:nth-child(1){
  transform:translateY(8px) rotate(45deg);
}

.menu-hamburguer.is-open span:nth-child(2){
  opacity:0;
}

.menu-hamburguer.is-open span:nth-child(3){
  transform:translateY(-8px) rotate(-45deg);
}

.menu-mobile[hidden]{
  display:none!important;
}

.menu-mobile{
  position:absolute;
  top:calc(100% - 2px);
  right:0;
  z-index:1001;
  width:min(250px,calc(100vw - 28px));
  padding:10px;
  display:flex;
  flex-direction:column;
  gap:4px;
  background:#fff;
  border:1px solid #eee8f5;
  border-radius:16px;
  box-shadow:0 18px 45px rgba(33,22,78,.18);
}

.menu-mobile a{
  display:flex;
  align-items:center;
  min-height:44px;
  padding:10px 13px;
  border-radius:11px;
  color:#241c3e;
  text-decoration:none;
  font:800 14px 'Nunito',sans-serif;
  line-height:1.15;
}

.menu-mobile a:hover,
.menu-mobile a:focus-visible{
  background:#fff0f7;
  color:var(--pink);
  outline:none;
}

.menu-mobile a[aria-current="page"]{
  background:#f4efff;
  color:var(--purple);
}

@media(max-width:700px){
  .menu-mobile{
    top:calc(100% - 1px);
    right:0;
    width:min(230px,calc(100vw - 22px));
  }

  .menu-mobile a{
    min-height:46px;
    font-size:14px;
  }
}


/* === ANIME BRINQUE — CATÁLOGO MODERNO FINAL === */

/* Grade com aparência mais limpa e uniforme */
.catalog-grid {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 22px !important;
    align-items: stretch !important;
}

.toy-card {
    position: relative !important;
    display: flex !important;
    flex-direction: column !important;
    overflow: hidden !important;
    background: #ffffff !important;
    border: 1px solid #e8e8ef !important;
    border-radius: 22px !important;
    box-shadow: 0 8px 24px rgba(29, 20, 73, .08) !important;
    transition: transform .18s ease, box-shadow .18s ease !important;
}

.toy-card:hover {
    transform: translateY(-3px) !important;
    box-shadow: 0 12px 30px rgba(29, 20, 73, .12) !important;
}

.card-image-button {
    display: block !important;
    width: 100% !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    overflow: hidden !important;
}

.toy-image {
    width: 100% !important;
    aspect-ratio: 4 / 3 !important;
    overflow: hidden !important;
    background: #f5f7fb !important;
}

.toy-image img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
}

.toy-card-body {
    display: flex !important;
    flex-direction: column !important;
    flex: 1 1 auto !important;
    padding: 16px 14px 14px !important;
}

.toy-name {
    display: block !important;
    width: 100% !important;
    min-height: 44px !important;
    margin: 0 0 12px !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    color: #17152f !important;
    font-family: "Nunito", sans-serif !important;
    font-size: 18px !important;
    font-weight: 900 !important;
    line-height: 1.2 !important;
    text-align: left !important;
}

.card-actions {
    display: grid !important;
    grid-template-columns: 46px minmax(0, 1fr) !important;
    gap: 9px !important;
    margin-top: auto !important;
}

.select-card {
    width: 46px !important;
    min-width: 46px !important;
    height: 42px !important;
    padding: 0 !important;
    border: 2px solid #ff0a69 !important;
    border-radius: 12px !important;
    background: #fff !important;
    color: #ff0a69 !important;
    box-shadow: none !important;
}

.details-btn {
    min-height: 42px !important;
    padding: 0 12px !important;
    border: 0 !important;
    border-radius: 12px !important;
    background: linear-gradient(135deg, #7a2ee6, #6522cc) !important;
    color: #fff !important;
    font-family: "Nunito", sans-serif !important;
    font-size: 11px !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    box-shadow: none !important;
}

.details-btn::before {
    content: "◉";
    margin-right: 7px;
    font-size: 9px;
}

.quick-favorite {
    position: absolute !important;
    top: 10px !important;
    right: 10px !important;
    z-index: 6 !important;
    width: 38px !important;
    height: 38px !important;
    padding: 0 !important;
    border: 2px solid #ff0a69 !important;
    border-radius: 50% !important;
    background: rgba(255,255,255,.96) !important;
    color: #ff0a69 !important;
    box-shadow: 0 4px 12px rgba(0,0,0,.08) !important;
}

.toy-card [class*="badge"] {
    border-radius: 999px !important;
}

/* Tablet */
@media (max-width: 1050px) {
    .catalog-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: 18px !important;
    }
}

/* Mobile: dois cards por linha, como no modelo aprovado */
@media (max-width: 700px) {
    .catalog-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 12px !important;
    }

    .toy-card {
        border-radius: 17px !important;
    }

    .toy-card-body {
        padding: 11px 9px 10px !important;
    }

    .toy-name {
        min-height: 38px !important;
        margin-bottom: 9px !important;
        font-size: 14px !important;
        line-height: 1.18 !important;
    }

    .card-actions {
        grid-template-columns: 39px minmax(0, 1fr) !important;
        gap: 6px !important;
    }

    .select-card {
        width: 39px !important;
        min-width: 39px !important;
        height: 37px !important;
        border-radius: 10px !important;
    }

    .details-btn {
        min-height: 37px !important;
        padding: 0 5px !important;
        border-radius: 10px !important;
        font-size: 9px !important;
    }

    .details-btn::before {
        margin-right: 4px !important;
        font-size: 8px !important;
    }

    .quick-favorite {
        width: 32px !important;
        height: 32px !important;
        top: 7px !important;
        right: 7px !important;
    }
}
