/* Product tools share the site's navy, orange and IBM Plex type hierarchy. */
.hy-finish-search { font-size:.95rem; font-weight:600; }
.hy-finish-search input { margin-top:.45rem; border-radius:4px; padding:.8rem 1rem; font-weight:400; }
.hy-finish-selection { justify-content:space-between; gap:1rem; padding:.9rem 1rem; border:1px solid var(--hy-rule); border-radius:4px; background:#fff; }
.hy-finish-selection p { margin:0; font-size:.95rem; color:var(--hy-navy); }
.hy-finish-clear,.hy-finish-dialog button,.pvc-dialog .pvc-dialog-close { appearance:none; display:inline-flex; align-items:center; justify-content:center; gap:.5rem; min-height:46px; padding:.65rem 1rem; border:1px solid var(--hy-navy); border-radius:4px; background:#fff; color:var(--hy-navy); font-family:var(--hy-body); font-size:.9rem; font-weight:600; line-height:1.4; letter-spacing:0; text-transform:none; text-decoration:none; cursor:pointer; }
.hy-finish-clear { flex-shrink:0; }
.hy-finish-clear:disabled { color:#586878; border-color:var(--hy-rule); background:#f8fafc; cursor:default; }
.hy-finish-clear:not(:disabled):hover,.hy-finish-dialog button:not([data-finish-select]):hover,.pvc-dialog .pvc-dialog-close:hover { background:var(--hy-navy); color:#fff; border-color:var(--hy-navy); }
.hy-finish-button { position:relative; width:100%; border-radius:4px; overflow:hidden; }
.hy-finish-label { width:100%; box-sizing:border-box; min-height:3.5rem; color:var(--hy-navy); font-size:.95rem; }
.hy-finish-label strong { display:flex; align-items:center; gap:.45rem; }
.hy-finish-swatch { display:inline-block; flex:none; width:1rem; height:1rem; border-radius:3px; background:var(--hy-swatch); border:1px solid #122d4333; }
.hy-finish-button[aria-pressed=true] { outline:2px solid var(--hy-signal); outline-offset:-2px; }
.hy-finish-button[aria-pressed=true] .hy-finish-label { background:#fff3ed; }
.hy-finish-button[aria-pressed=true] .hy-finish-label::after { position:absolute; top:8px; left:8px; padding:4px 7px; border-radius:3px; background:var(--hy-navy); color:#fff; font-size:.7rem; line-height:1.3; content:'Selected ✓'; }
.hy-finish-dialog { width:min(42rem,calc(100% - 2rem)); max-width:none; max-height:calc(100dvh - 2rem); padding:0; border:1px solid var(--hy-rule); border-radius:6px; background:#fff; color:var(--hy-navy); box-shadow:0 24px 70px #08142655; }
.hy-finish-dialog::backdrop { background:rgba(8,20,38,.75); backdrop-filter:blur(4px); }
.hy-finish-dialog header { display:flex; justify-content:space-between; align-items:center; gap:1rem; padding:1.1rem 1.35rem; border-bottom:1px solid var(--hy-rule); }
.hy-finish-dialog .hy-finish-dialog__eyebrow { margin:0 0 .2rem; font-size:.75rem; letter-spacing:.05em; text-transform:uppercase; color:#526577; }
.hy-finish-dialog h2 { max-width:none; margin:0; font-family:var(--hy-display); font-size:1.75rem; line-height:1.15; color:var(--hy-navy); }
.hy-finish-dialog [data-finish-close],.hy-finish-dialog [data-finish-prev],.hy-finish-dialog [data-finish-next],.pvc-dialog .pvc-dialog-close { flex:0 0 46px; width:46px; height:46px; padding:0; border-color:var(--hy-rule); }
.hy-finish-dialog__stage { display:grid; place-items:center; min-height:12rem; height:min(48dvh,29rem); padding:1.25rem; background:#f1f5f8; }
.hy-finish-dialog__stage img { display:block; width:100%; height:100%; max-height:100%; min-height:0; object-fit:contain; margin:0; }
.hy-finish-dialog__stage [hidden] { display:none !important; }
.hy-finish-dialog__stage p { padding:1rem; text-align:center; max-width:28rem; font-size:.95rem; color:#526577; }
.hy-finish-dialog footer { display:grid; grid-template-columns:1fr auto; align-items:center; gap:1rem; padding:1.1rem 1.35rem; background:#fff; }
.hy-finish-dialog__browse { display:flex; align-items:center; gap:.7rem; }
.hy-finish-dialog [data-finish-position] { min-width:3.5rem; font-size:.9rem; text-align:center; font-variant-numeric:tabular-nums; }
.hy-finish-dialog [data-finish-select] { background:var(--hy-signal); color:var(--hy-ink); border-color:#b73a00; font-family:var(--hy-display); font-size:1rem; letter-spacing:.025em; text-transform:uppercase; }
.hy-finish-dialog [data-finish-select]:hover { background:#ff8855; color:var(--hy-ink); border-color:#b73a00; }
.hy-finish-dialog #finish-dialog-note { grid-column:1/-1; margin:0; font-size:.8rem; color:#526577; line-height:1.5; }
.hy-finish-modal-open { overflow:hidden; }
.hy-finish-dialog :is(button,a):focus-visible,.hy-finish-clear:focus-visible,.hy-finish-button:focus-visible,.pvc-dialog .pvc-dialog-close:focus-visible { outline:3px solid #0057cc; outline-offset:3px; }
@media(max-width:540px) { .hy-finish-selection { align-items:flex-start; flex-direction:column; } .hy-finish-dialog { width:calc(100% - 1rem); max-height:calc(100dvh - 1rem); } .hy-finish-dialog header,.hy-finish-dialog footer { padding:.9rem; } .hy-finish-dialog__stage { height:min(42dvh,25rem); padding:.75rem; } .hy-finish-dialog footer { grid-template-columns:1fr; gap:.8rem; } .hy-finish-dialog__browse { justify-content:center; } .hy-finish-dialog [data-finish-select] { width:100%; } .hy-finish-dialog h2 { font-size:1.5rem; } }
