/* APPV1_6CAT_FILTER_SHAPES34_DRAWER_R1F_20260902 */

.gt-catalogue-shape-grid .gt-catalogue-shape-extra{
  display:none !important;
}
.gtcat .gt-catalogue-shape-grid.is-expanded .gt-catalogue-shape-extra{
  display:block !important;
}
.gt-gem-page .gt-catalogue-shape-grid.is-expanded .gt-catalogue-shape-extra{
  display:flex !important;
}
.gt-catalogue-shape-icon{
  display:block;
  width:46px;
  height:46px;
  max-width:100%;
  margin:0 auto 5px;
  object-fit:contain;
  border:0 !important;
  border-radius:0 !important;
  outline:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  filter:none !important;
}
.gt-gem-page .gt-gem-shape-tile{
  min-height:76px;
  padding:7px 3px 6px;
  box-sizing:border-box;
  border:1px solid #e0e4e9;
  background:#fff;
}
.gt-gem-page .gt-gem-shape-tile:has(> input[type="radio"]:checked){
  border:3px solid #102847 !important;
  background:#dbe4ef !important;
  box-shadow:none !important;
  outline:0 !important;
}
.gt-gem-page .gt-gem-shape-tile:has(> input[type="radio"]:checked) small{
  color:#102847 !important;
  font-weight:700 !important;
}
.gt-gem-page .gt-gem-shape-tile:has(> input[type="radio"]:checked) .gt-catalogue-shape-icon{
  border:0 !important;
  border-radius:0 !important;
  outline:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  filter:none !important;
}
.gt-gem-page .gt-gem-shape-tile:has(> input[type="radio"]:focus-visible){
  outline:2px solid rgba(16,40,71,.28) !important;
  outline-offset:2px !important;
}

/* Diamond shapes: the complete tile is selected; the icon never receives a ring. */
.gtcat .gt-shape-choice-r3 > input[type="checkbox"] + span{
  box-sizing:border-box !important;
  border:1px solid #d6e1eb !important;
  background:#fff !important;
  box-shadow:none !important;
}
.gtcat .gt-shape-choice-r3:has(> input[type="checkbox"]:checked) > input[type="checkbox"]:checked + span{
  border:3px solid #102847 !important;
  background:#dbe4ef !important;
  box-shadow:none !important;
  outline:0 !important;
}
.gtcat .gt-shape-choice-r3 > input[type="checkbox"]:checked + span .gt-shape-label{
  color:#102847 !important;
  font-weight:700 !important;
}
.gtcat .gt-shape-choice-r3:has(> input[type="checkbox"]:checked)::before,
.gtcat .gt-shape-choice-r3:has(> input[type="checkbox"]:checked)::after,
.gtcat .gt-shape-choice-r3 > input[type="checkbox"] + span::before,
.gtcat .gt-shape-choice-r3 > input[type="checkbox"] + span::after,
.gtcat .gt-shape-choice-r3 .gt-shape-image-wrap-r3::before,
.gtcat .gt-shape-choice-r3 .gt-shape-image-wrap-r3::after{
  content:none !important;
  display:none !important;
}
.gtcat .gt-shape-choice-r3 .gt-shape-image-wrap-r3,
.gtcat .gt-shape-choice-r3 .gt-shape-reference-icon,
.gtcat .gt-shape-choice-r3 > input[type="checkbox"]:checked + span .gt-shape-reference-icon{
  border:0 !important;
  border-radius:0 !important;
  outline:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  filter:none !important;
}
.gtcat .gt-shape-choice-r3:has(> input[type="checkbox"]:focus-visible) > span{
  outline:2px solid rgba(16,40,71,.28) !important;
  outline-offset:2px !important;
}
.gt-catalogue-more-shapes{
  display:flex;
  width:100%;
  min-height:42px;
  align-items:center;
  justify-content:center;
  margin:10px 0 2px;
  padding:8px 12px;
  border:1px solid #cbd6e1;
  border-radius:3px;
  background:#fff;
  color:#102847;
  font:700 11px/1.2 Arial,sans-serif;
  letter-spacing:.02em;
  cursor:pointer;
}
.gt-catalogue-more-shapes:hover,
.gt-catalogue-more-shapes:focus-visible{
  border-color:#102847;
  outline:2px solid rgba(16,40,71,.14);
  outline-offset:2px;
}
.gtcat .gt-catalogue-more-shapes{
  margin:8px 0 4px;
  border-radius:10px;
}

/* Desktop gemstone filters: fixed header and actions with an internal scroller. */
.gt-gem-page .gt-gem-filter-shell{
  height:calc(100vh - 36px);
  max-height:calc(100vh - 36px);
  min-height:0;
  overflow:hidden;
}
.gt-gem-page .gt-gem-filter-shell > form{
  display:flex;
  flex-direction:column;
  width:100%;
  height:100%;
  min-height:0;
}
.gt-gem-page .gt-gem-filter-titlebar{
  position:relative;
  flex:0 0 auto;
  background:#fff;
  z-index:3;
}
.gt-gem-page .gt-gem-filter-body{
  flex:1 1 auto;
  min-height:0;
  overflow-y:auto;
  overflow-x:hidden;
  overscroll-behavior:contain;
  -webkit-overflow-scrolling:touch;
  scrollbar-gutter:stable;
}
.gt-gem-page .gt-gem-filter-actions{
  display:grid;
  grid-template-columns:minmax(108px,.9fr) minmax(170px,1.6fr);
  gap:8px;
  position:relative;
  inset:auto;
  flex:0 0 auto;
  min-height:72px;
  margin:0;
  padding:10px 12px;
  border-top:1px solid #d9e3ee;
  background:#fff;
  z-index:4;
  box-shadow:0 -10px 24px rgba(13,31,60,.09);
}
.gt-gem-page .gt-gem-filter-actions > a,
.gt-gem-page .gt-gem-filter-actions > button{
  display:flex;
  min-width:0;
  min-height:48px;
  align-items:center;
  justify-content:center;
  margin:0;
  border-radius:12px;
  font-size:15px;
  line-height:1.1;
  white-space:normal;
}

@media (max-width:900px){
  html.gt-gem-filter-lock,
  body.gt-gem-filter-lock{
    overflow:hidden !important;
    overscroll-behavior:none !important;
  }
  .gt-gem-page .gt-gem-mobile-filterbar{
    display:flex;
    position:sticky;
    top:0;
    z-index:25;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    padding:9px 12px;
    border-bottom:1px solid #dde3e9;
    background:#fff;
  }
  .gt-gem-page .gt-gem-mobile-filter-btn{
    min-height:44px;
    padding:8px 14px;
    border:1px solid #102847;
    border-radius:10px;
    background:#102847;
    color:#fff;
    font:700 13px/1.2 Arial,sans-serif;
  }
  .gt-gem-page .gt-gem-catalogue-layout{
    display:block;
    padding-top:14px;
  }
  body:not(.gt-gem-filter-open) .gt-gem-page #gtGemFilters{
    display:none !important;
  }
  body.gt-gem-filter-open .gt-gem-page #gtGemFilters,
  .gt-gem-page #gtGemFilters.is-open{
    display:block !important;
    position:fixed !important;
    inset:0 !important;
    width:100vw !important;
    height:100vh !important;
    height:100dvh !important;
    min-height:0 !important;
    max-height:100dvh !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    border-radius:0 !important;
    background:#fff !important;
    box-shadow:none !important;
    overflow:hidden !important;
    z-index:2147483000 !important;
  }
  body.gt-gem-filter-open .gt-gem-page #gtGemFilters > form{
    display:flex !important;
    flex-direction:column !important;
    width:100% !important;
    height:100% !important;
    min-height:0 !important;
  }
  body.gt-gem-filter-open .gt-gem-page .gt-gem-filter-titlebar{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) auto !important;
    flex:0 0 58px !important;
    min-height:58px !important;
    padding:9px 14px !important;
    border-bottom:1px solid #d9e3ee !important;
    background:#fff !important;
    z-index:40 !important;
  }
  body.gt-gem-filter-open .gt-gem-page .gt-gem-filter-titlebar > a{
    display:none !important;
  }
  body.gt-gem-filter-open .gt-gem-page .gt-gem-filter-titlebar span{
    font-size:20px !important;
  }
  body.gt-gem-filter-open .gt-gem-page .gt-gem-filter-close{
    display:grid !important;
    width:40px !important;
    height:40px !important;
    min-width:40px !important;
    min-height:40px !important;
    place-items:center !important;
    padding:0 !important;
    border:1px solid #cbd8e5 !important;
    border-radius:50% !important;
    background:#fff !important;
    color:#102847 !important;
    font-size:26px !important;
    line-height:1 !important;
    cursor:pointer !important;
  }
  body.gt-gem-filter-open .gt-gem-page .gt-gem-filter-body{
    display:block !important;
    flex:1 1 auto !important;
    min-height:0 !important;
    padding:0 0 20px !important;
    overflow-y:auto !important;
    overflow-x:hidden !important;
    overscroll-behavior-y:contain !important;
    -webkit-overflow-scrolling:touch !important;
    touch-action:pan-y pinch-zoom !important;
  }
  body.gt-gem-filter-open .gt-gem-page .gt-gem-filter-actions{
    display:grid !important;
    grid-template-columns:minmax(108px,.9fr) minmax(170px,1.6fr) !important;
    gap:8px !important;
    flex:0 0 auto !important;
    min-height:72px !important;
    margin:0 !important;
    padding:10px 12px calc(10px + env(safe-area-inset-bottom)) !important;
    border-top:1px solid #d9e3ee !important;
    background:#fff !important;
    box-shadow:0 -7px 20px rgba(13,31,60,.12) !important;
    z-index:50 !important;
  }
  body.gt-gem-filter-open .gt-gem-page .gt-gem-filter-actions > a,
  body.gt-gem-filter-open .gt-gem-page .gt-gem-filter-actions > button{
    display:flex !important;
    min-width:0 !important;
    min-height:48px !important;
    align-items:center !important;
    justify-content:center !important;
    margin:0 !important;
    border-radius:12px !important;
    font-size:15px !important;
    line-height:1.1 !important;
    white-space:normal !important;
  }
  .gt-gem-page .gt-gem-shape-grid{
    grid-template-columns:repeat(4,minmax(0,1fr));
  }
}
