/* Refined product controls kept separate from the main builder bundle. */
.erb .rb-metal-options{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:10px;
}
.erb .rb-metal-options label{cursor:pointer;margin:0;min-width:0}
.erb .rb-metal-options label span{
    align-items:center;
    background:#fff!important;
    border:1px solid #d8dbe2;
    border-radius:2px;
    display:grid;
    grid-template-columns:30px minmax(0,1fr);
    grid-template-rows:auto auto;
    min-height:62px;
    min-width:0;
    padding:10px 12px;
    transition:border-color .18s ease,box-shadow .18s ease,background .18s ease;
}
.erb .rb-metal-options label:hover span{border-color:#8b91a1;background:#fafafa!important}
.erb .rb-metal-options label input:focus-visible+span{outline:3px solid #bdcff5;outline-offset:2px}
.erb .rb-metal-options label input:checked+span{
    background:#f7f8fb!important;
    border:2px solid var(--rb-navy);
    box-shadow:inset 0 0 0 1px var(--rb-navy);
    padding:9px 11px;
}
.erb .rb-metal-options span>i{
    background:#d8b354;
    border:1px solid #c49a36;
    border-radius:50%;
    box-shadow:inset 0 0 0 4px rgba(255,255,255,.35);
    grid-row:1/3;
    height:24px;
    width:24px;
}
.erb .rb-metal-options .is-rose-gold>i{background:#c99285;border-color:#b97c70}
.erb .rb-metal-options strong{font-size:14px;line-height:1.2}
.erb .rb-metal-options small{color:#666d7d;font-size:10px;line-height:1.2;margin-top:2px}

.erb .rb-engraving{
    border-bottom:1px solid var(--rb-line);
    border-top:1px solid var(--rb-line);
    margin:22px 0;
    padding:0;
}
.erb .rb-engraving summary{
    align-items:center;
    color:var(--rb-navy);
    cursor:pointer;
    display:flex;
    font-size:15px;
    font-weight:700;
    gap:10px;
    list-style:none;
    min-height:54px;
    outline:none;
    padding:0 2px;
}
.erb .rb-engraving summary::-webkit-details-marker{display:none}
.erb .rb-engraving summary:focus-visible{box-shadow:0 0 0 3px #bdcff5;border-radius:2px}
.erb .rb-engraving summary i{
    align-items:center;
    border:1px solid #bfc4ce;
    border-radius:50%;
    display:flex;
    flex:0 0 24px;
    height:24px;
    justify-content:center;
    transition:transform .18s ease;
}
.erb .rb-engraving[open] summary i{transform:rotate(45deg)}
.erb .rb-engraving>div{
    align-items:end;
    background:#f7f8fa;
    border-top:1px solid #e3e5ea;
    display:grid!important;
    grid-template-columns:minmax(0,1.4fr) minmax(150px,.8fr);
    gap:14px;
    margin:0;
    padding:16px;
}
.erb .rb-engraving label{display:flex!important;flex-direction:column;gap:7px;min-width:0}
.erb .rb-engraving input,.erb .rb-engraving select{background:#fff;height:44px;min-height:44px;width:100%}
.erb .rb-engraving input::placeholder{color:#9297a3;font-size:12px;font-weight:400}

.erb .rb-shape-picker{grid-template-columns:80px repeat(auto-fit,minmax(110px,1fr))}
.erb .rb-shape-picker label span{
    background:#fff;
    min-height:88px;
    transition:background-color .18s ease,color .18s ease;
}
.erb .rb-shape-icon{
    fill:none;
    height:38px;
    stroke:currentColor;
    stroke-linecap:round;
    stroke-linejoin:round;
    stroke-width:1.25;
    width:38px;
}
.erb .rb-stone-table__identity .rb-shape-icon{height:36px;width:36px}
.erb .rb-pdp__media-360,.erb .rb-gallery__stone--360{background:#f6f4ef;position:relative}
.erb .rb-pdp__media-360 video,.erb .rb-gallery__stone--360 video{height:100%;object-fit:contain;width:100%}
.erb .rb-360-viewer video{cursor:grab;touch-action:none;user-select:none}
.erb .rb-360-viewer video:focus-visible{outline:3px solid #9bb7ef;outline-offset:-3px}
.erb .rb-360-viewer.is-dragging video{cursor:grabbing}
.erb .rb-360-viewer.is-dragging>span{opacity:.55}
.erb .rb-pdp__media-360>span,.erb .rb-gallery__stone--360>span{
    background:rgba(10,23,54,.88);
    bottom:14px;
    color:#fff;
    font-size:11px;
    font-weight:700;
    left:14px;
    letter-spacing:.05em;
    padding:7px 10px;
    position:absolute;
    text-transform:uppercase;
    transition:opacity .18s ease;
}

@media(max-width:767px){
    .erb .rb-filter-close{align-items:center;background:#fff;border:0;display:flex;font-weight:700;gap:8px;margin:0 0 18px auto;padding:10px}
    .erb .rb-metal-options{grid-template-columns:repeat(2,minmax(0,1fr))}
    .erb .rb-engraving>div{grid-template-columns:1fr}
}
