/**
 * Hole operations wizard styles.
 */

/* Per-part block. */

.quoteandcut-hole-ops {
	margin-top: 12px;
	padding: 12px 14px;
	border: 1px solid var(--quoteandcut-border-color, #d7dde6);
	border-radius: var(--quoteandcut-radius-md, 8px);
	background: var(--quoteandcut-bg-color, #f8fafc);
}

.quoteandcut-hole-ops h4 {
	margin: 0 0 4px;
	font-size: var(--quoteandcut-text-md, 14px);
}

/*
 * Holes pane inside the secondary processes modal. The overlay, layout and
 * shared buttons are styled in sp-modal.css.
 */

.quoteandcut-hole-pane {
	display: flex;
	flex-direction: column;
	gap: 14px;
}

/* Use the form's font rather than the browser's default for controls. */
.quoteandcut-hole-pane button,
.quoteandcut-hole-pane select,
.quoteandcut-hole-pane input {
	font-family: inherit;
}

/* Key entry above the drawing, also used for operation dots. */
.quoteandcut-hole-wizard__chip {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	white-space: nowrap;
}

.quoteandcut-hole-wizard__chip-dot,
.quoteandcut-hole-wizard__state-dot {
	display: inline-block;
	width: 9px;
	height: 9px;
	border-radius: 50%;
	flex: 0 0 auto;
}

.quoteandcut-hole-wizard__state-dot.is-available {
	border: 2px dashed var(--quoteandcut-accent-ink, var(--quoteandcut-accent-primary, #ff7618));
	background: var(--quoteandcut-card-bg, #fff);
}

.quoteandcut-hole-wizard__state-dot.is-attention {
	border: 2px solid var(--quoteandcut-warning-color, #d97706);
	background: var(--quoteandcut-warning-soft, #fffbeb);
}

.quoteandcut-hole-wizard__legend-note {
	margin: 0;
	font-size: var(--quoteandcut-text-xs, 12px);
	line-height: 1.45;
	color: var(--quoteandcut-text-secondary, #475569);
}

.quoteandcut-hole-wizard__legend-note[hidden],
.quoteandcut-hole-wizard__limit[hidden] {
	display: none;
}

/* Shown when the part's maximum number of hole operations is reached. */
.quoteandcut-hole-wizard__limit {
	margin: 0;
	padding: 10px 12px;
	border: 1px solid var(--quoteandcut-warning-border, #f0c36d);
	border-radius: var(--quoteandcut-radius-md, 8px);
	background: var(--quoteandcut-warning-soft, #fffbeb);
	color: var(--quoteandcut-warning-text, #92400e);
	font-size: var(--quoteandcut-text-sm, 13px);
	line-height: 1.45;
}

/* Panels. */

.quoteandcut-hole-wizard__panel-body {
	min-width: 0;
}

.quoteandcut-hole-wizard__panel-title,
.quoteandcut-hole-wizard__hole-title {
	margin: 0 0 6px;
	font-size: var(--quoteandcut-text-lg, 16px);
	font-weight: var(--quoteandcut-weight-bold, 700);
	line-height: 1.35;
	color: var(--quoteandcut-text-primary, #1f2937);
}

.quoteandcut-hole-wizard__panel-title:focus,
.quoteandcut-hole-wizard__hole-title:focus {
	outline: none;
}

.quoteandcut-hole-wizard__prompt,
.quoteandcut-hole-wizard__hole-meta {
	margin: 0 0 12px;
	font-size: var(--quoteandcut-text-sm, 13px);
	line-height: 1.5;
	color: var(--quoteandcut-text-secondary, #4b5563);
}

/* Breadcrumbs, e.g. Hole groups › 5 × Ø6.60 mm › Hole 3. */
.quoteandcut-hole-wizard__crumbs {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0 6px;
	margin: -6px 0 6px;
	font-size: var(--quoteandcut-text-sm, 13px);
	font-weight: var(--quoteandcut-weight-semibold, 600);
	line-height: 1.3;
}

.quoteandcut-hole-wizard__crumb {
	display: inline-flex;
	align-items: center;
	min-height: 32px;
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--quoteandcut-accent-ink, var(--quoteandcut-accent-primary, #ad571f));
	font: inherit;
	text-align: start;
	cursor: pointer;
}

button.quoteandcut-hole-wizard__crumb:hover,
button.quoteandcut-hole-wizard__crumb:focus-visible {
	color: var(--quoteandcut-accent-ink-hover, var(--quoteandcut-accent-primary-hover, #8f4518));
	text-decoration: underline;
	text-underline-offset: 3px;
}

button.quoteandcut-hole-wizard__crumb:focus-visible {
	outline: 2px solid var(--quoteandcut-accent-ink, var(--quoteandcut-accent-primary, #ff7618));
	outline-offset: 2px;
	border-radius: 2px;
}

.quoteandcut-hole-wizard__crumb.is-current {
	color: var(--quoteandcut-text-primary, #1f2937);
	cursor: default;
}

.quoteandcut-hole-wizard__crumb-sep {
	color: var(--quoteandcut-text-muted, #687281);
}

/* Group or hole heading. Holes also get previous and next buttons. */
.quoteandcut-hole-wizard__head {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 0 0 4px;
}

.quoteandcut-hole-wizard__head .quoteandcut-hole-wizard__hole-title {
	flex: 1 1 auto;
	min-width: 0;
	margin: 0;
}

.quoteandcut-hole-wizard__step {
	display: flex;
	flex: 0 0 auto;
	align-items: center;
	gap: 4px;
}

.quoteandcut-hole-wizard__step-count {
	padding: 0 2px;
	font-size: var(--quoteandcut-text-xs, 12px);
	font-weight: var(--quoteandcut-weight-semibold, 600);
	color: var(--quoteandcut-text-secondary, #475569);
	white-space: nowrap;
}

.quoteandcut-hole-wizard__step-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	padding: 0;
	border: 1px solid var(--quoteandcut-border-color, #e2e8f0);
	border-radius: var(--quoteandcut-radius-md, 8px);
	background: var(--quoteandcut-card-bg, #fff);
	color: var(--quoteandcut-text-primary, #1f2937);
	cursor: pointer;
	transition: border-color 0.14s ease, color 0.14s ease;
}

.quoteandcut-hole-wizard__step-button:hover:not(:disabled) {
	border-color: var(--quoteandcut-accent-primary, #ff7618);
	color: var(--quoteandcut-accent-ink, var(--quoteandcut-accent-primary, #ff7618));
}

.quoteandcut-hole-wizard__step-button:focus-visible {
	outline: 2px solid var(--quoteandcut-accent-ink, var(--quoteandcut-accent-primary, #ff7618));
	outline-offset: 2px;
}

.quoteandcut-hole-wizard__step-button:disabled {
	opacity: 0.4;
	cursor: default;
}

/* One chip per hole in a group, with its number and operation dot. */
.quoteandcut-hole-wizard__hole-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin: 0 0 16px;
}

.quoteandcut-hole-wizard__hole-chip {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	min-height: 36px;
	padding-block: 0;
	padding-inline: 5px 9px;
	border: 1px solid var(--quoteandcut-border-color, #e2e8f0);
	border-radius: 999px;
	background: var(--quoteandcut-card-bg, #fff);
	color: var(--quoteandcut-text-primary, #1f2937);
	font: inherit;
	cursor: pointer;
	transition: border-color 0.14s ease, background-color 0.14s ease;
}

.quoteandcut-hole-wizard__hole-chip:hover {
	border-color: var(--quoteandcut-accent-primary, #ff7618);
}

.quoteandcut-hole-wizard__hole-chip:focus-visible {
	border-color: var(--quoteandcut-accent-primary, #ff7618);
	outline: 2px solid var(--quoteandcut-accent-ink, var(--quoteandcut-accent-primary, #ff7618));
	outline-offset: 2px;
}

.quoteandcut-hole-wizard__hole-chip.is-warning {
	border-color: var(--quoteandcut-warning-border, #f0c36d);
	background: var(--quoteandcut-warning-soft, #fffbeb);
}

.quoteandcut-hole-wizard__hole-chip-number {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	min-width: 24px;
	height: 24px;
	padding: 0 5px;
	border-radius: 999px;
	background: var(--quoteandcut-text-primary, #1f2937);
	color: var(--quoteandcut-card-bg, #ffffff);
	font-size: 11px;
	font-weight: var(--quoteandcut-weight-bold, 700);
	line-height: 1;
}

.quoteandcut-hole-wizard__hole-chip-dot {
	box-sizing: border-box;
	width: 10px;
	height: 10px;
	border: 2px solid var(--quoteandcut-border-strong, #8c94a0);
	border-radius: 50%;
	background: transparent;
}

/* Groups list. */

.quoteandcut-hole-wizard__status {
	display: flex;
	flex-direction: column;
	gap: 2px;
	margin: 0 0 12px;
	padding: 10px 12px;
	border-radius: var(--quoteandcut-radius-md, 8px);
	background: var(--quoteandcut-surface-muted, var(--quoteandcut-bg-color, #f4f7f6));
	font-size: var(--quoteandcut-text-sm, 13px);
	line-height: 1.4;
	color: var(--quoteandcut-text-primary, #1f2937);
}

.quoteandcut-hole-wizard__status span {
	font-size: var(--quoteandcut-text-xs, 12px);
	color: var(--quoteandcut-text-secondary, #475569);
}

.quoteandcut-hole-wizard__groups {
	margin: 0;
	padding: 0;
	list-style: none;
}

.quoteandcut-hole-wizard__groups li {
	margin: 0 0 8px;
}

.quoteandcut-hole-wizard__group {
	display: flex;
	align-items: center;
	gap: 12px;
	width: 100%;
	min-height: 56px;
	padding-block: 10px;
	padding-inline: 12px 10px;
	border: 1px solid var(--quoteandcut-border-color, #e2e8f0);
	border-radius: var(--quoteandcut-radius-md, 8px);
	background: var(--quoteandcut-card-bg, #fff);
	color: var(--quoteandcut-text-primary, #1f2937);
	font: inherit;
	text-align: start;
	cursor: pointer;
	transition: border-color 0.14s ease, background-color 0.14s ease;
}

.quoteandcut-hole-wizard__group::before {
	/* Decorative copy of the count; the empty alt text hides it from screen readers. */
	content: attr(data-hole-wizard-count);
	content: attr(data-hole-wizard-count) / "";
	display: inline-flex;
	flex: 0 0 auto;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	min-width: 32px;
	height: 32px;
	padding: 0 6px;
	border-radius: 999px;
	background: var(--quoteandcut-surface-muted, var(--quoteandcut-bg-color, #f4f7f6));
	color: var(--quoteandcut-text-primary, #1f2937);
	font-size: var(--quoteandcut-text-sm, 13px);
	font-weight: var(--quoteandcut-weight-bold, 700);
}

.quoteandcut-hole-wizard__group.is-set::before {
	background: var(--quoteandcut-accent-primary, #ff7618);
	color: var(--quoteandcut-text-on-accent, #ffffff);
}

.quoteandcut-hole-wizard__group.is-partial::before {
	background: var(--quoteandcut-card-bg, #fff);
	box-shadow: inset 0 0 0 2px var(--quoteandcut-accent-primary, #ff7618);
}

.quoteandcut-hole-wizard__group:hover {
	border-color: var(--quoteandcut-accent-primary, #ff7618);
	background: var(--quoteandcut-accent-soft, #fff1e8);
}

.quoteandcut-hole-wizard__group:focus-visible {
	border-color: var(--quoteandcut-accent-primary, #ff7618);
	outline: 2px solid var(--quoteandcut-accent-ink, var(--quoteandcut-accent-primary, #ff7618));
	outline-offset: 2px;
}

.quoteandcut-hole-wizard__group.is-attention {
	border-color: var(--quoteandcut-warning-border, #f0c36d);
	background: var(--quoteandcut-warning-soft, #fffbeb);
}

.quoteandcut-hole-wizard__group-text {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	gap: 3px;
	min-width: 0;
}

.quoteandcut-hole-wizard__group-main {
	font-size: var(--quoteandcut-text-md, 14px);
	font-weight: var(--quoteandcut-weight-bold, 700);
	line-height: 1.3;
}

.quoteandcut-hole-wizard__group-status {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 2px 6px;
	font-size: var(--quoteandcut-text-xs, 12px);
	line-height: 1.35;
	color: var(--quoteandcut-text-secondary, #475569);
}

.quoteandcut-hole-wizard__chevron {
	flex: 0 0 auto;
	margin-inline-start: auto;
	color: var(--quoteandcut-text-muted, #687281);
}

/* Flip chevrons and arrows for right-to-left languages. */
[dir="rtl"] .quoteandcut-hole-wizard__chevron,
[dir="rtl"] .quoteandcut-hole-wizard__step-button svg {
	transform: scaleX(-1);
}

/* Holes that no offered size can fit, listed separately with the reason. */
.quoteandcut-hole-wizard__no-ops {
	margin-top: 14px;
}

.quoteandcut-hole-wizard__no-ops h5 {
	margin: 0 0 8px;
	font-size: var(--quoteandcut-text-sm, 13px);
	font-weight: var(--quoteandcut-weight-semibold, 600);
	color: var(--quoteandcut-text-secondary, #475569);
}

/* Chosen bar. */

.quoteandcut-hole-wizard__chosen {
	display: flex;
	align-items: center;
	gap: 12px;
	margin: 0 0 10px;
	padding-block: 10px;
	padding-inline: 14px 10px;
	border: 1px solid var(--quoteandcut-accent-primary, #ff7618);
	border-radius: var(--quoteandcut-radius-md, 8px);
	background: var(--quoteandcut-accent-soft, #fff1e8);
}

.quoteandcut-hole-wizard__chosen.is-choosing {
	margin-bottom: 16px;
}

.quoteandcut-hole-wizard__chosen-text {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	gap: 2px;
	min-width: 0;
}

.quoteandcut-hole-wizard__chosen-name {
	display: flex;
	align-items: center;
	gap: 8px;
	overflow: hidden;
	font-size: var(--quoteandcut-text-md, 14px);
	font-weight: var(--quoteandcut-weight-bold, 700);
	line-height: 1.3;
	white-space: nowrap;
	color: var(--quoteandcut-text-primary, #1f2937);
}

/* When the text is too long, the Change button moves below it. */
.quoteandcut-hole-wizard__chosen.is-stacked {
	flex-wrap: wrap;
}

.quoteandcut-hole-wizard__chosen.is-stacked .quoteandcut-hole-wizard__chosen-text {
	flex-basis: 100%;
}

.quoteandcut-hole-wizard__chosen.is-stacked .quoteandcut-hole-wizard__chosen-name {
	white-space: normal;
}

.quoteandcut-hole-wizard__chosen.is-stacked .quoteandcut-sp-button {
	margin-inline-start: 17px;
}

.quoteandcut-hole-wizard__chosen-detail {
	padding-inline-start: 17px;
	font-size: var(--quoteandcut-text-xs, 12px);
	line-height: 1.35;
	color: var(--quoteandcut-text-secondary, #475569);
}

.quoteandcut-hole-wizard__chosen .quoteandcut-sp-button {
	flex: 0 0 auto;
}

/* Sizes, grouped by operation, two to a row. */
.quoteandcut-hole-wizard__ops {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.quoteandcut-hole-wizard__op-name {
	display: flex;
	align-items: center;
	gap: 8px;
	margin: 0 0 8px;
	font-size: 0.86rem;
	font-weight: var(--quoteandcut-weight-semibold, 600);
	line-height: 1.3;
	color: var(--quoteandcut-text-primary, #1f2937);
}

/* Spacing between standards, e.g. metric and UNC taps. */
.quoteandcut-hole-wizard__op-standard + .quoteandcut-hole-wizard__op-standard {
	margin-top: 10px;
}

.quoteandcut-hole-wizard__op-standard-name {
	display: block;
	margin: 0 0 6px;
	font-size: 11px;
	font-weight: var(--quoteandcut-weight-bold, 700);
	letter-spacing: 0.05em;
	text-transform: uppercase;
	color: var(--quoteandcut-text-muted, #687281);
}

/* Operation-specific instructions and charges below its sizes. */
.quoteandcut-hole-wizard__op-group > .quoteandcut-hole-wizard__instruction,
.quoteandcut-hole-wizard__op-group > .quoteandcut-hole-wizard__pricing-note {
	margin: 8px 0 0;
}

/* An operation with no size that suits this sheet, with the reason. */
.quoteandcut-hole-wizard__ruled-out {
	display: flex;
	align-items: center;
	gap: 8px;
	margin: 0;
	padding: 10px 12px;
	border: 1px dashed var(--quoteandcut-border-strong, #8c94a0);
	border-radius: var(--quoteandcut-radius-md, 8px);
	background: var(--quoteandcut-surface-muted, var(--quoteandcut-bg-color, #f4f7f6));
	font-size: var(--quoteandcut-text-sm, 13px);
	line-height: 1.4;
	color: var(--quoteandcut-text-secondary, #475569);
}

.quoteandcut-hole-wizard__ruled-out + .quoteandcut-hole-wizard__ruled-out {
	margin-top: -8px;
}

.quoteandcut-hole-wizard__ruled-out .quoteandcut-hole-wizard__chip-dot {
	opacity: 0.55;
}

.quoteandcut-hole-wizard__ruled-out strong {
	font-weight: var(--quoteandcut-weight-bold, 700);
}

.quoteandcut-hole-wizard__ops-notes {
	margin: 14px 0 0;
}

.quoteandcut-hole-wizard__ops-notes > :last-child {
	margin-bottom: 0;
}

.quoteandcut-hole-wizard__instruction,
.quoteandcut-hole-wizard__pricing-note {
	margin: 0 0 6px;
	font-size: var(--quoteandcut-text-xs, 12px);
	line-height: 1.45;
	color: var(--quoteandcut-text-secondary, #475569);
}

/*
 * Choice buttons, two to a row. fitChoiceRows() adds .is-single when a
 * button's text would not fit. A lone or odd last button spans the row.
 */

.quoteandcut-hole-wizard__grid {
	margin-top: 0;
}

.quoteandcut-hole-wizard__grid > :only-child,
.quoteandcut-hole-wizard__grid > :last-child:nth-child(odd) {
	grid-column: 1 / -1;
}

.quoteandcut-hole-wizard__grid.is-single {
	grid-template-columns: minmax(0, 1fr);
}

.quoteandcut-hole-wizard__grid > .quoteandcut-sp-choice {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 2px;
	min-width: 0;
	min-height: 48px;
	padding: 6px 10px;
	line-height: 1.25;
	text-align: center;
}

.quoteandcut-hole-wizard__opt-name,
.quoteandcut-hole-wizard__opt-detail,
.quoteandcut-hole-wizard__choice-name,
.quoteandcut-hole-wizard__choice-sub {
	display: block;
	max-width: 100%;
	overflow: hidden;
	white-space: nowrap;
}

/* Allow wrapping once a button already has the full row. */
.quoteandcut-hole-wizard__grid.is-single .quoteandcut-hole-wizard__opt-name,
.quoteandcut-hole-wizard__grid.is-single .quoteandcut-hole-wizard__opt-detail,
.quoteandcut-hole-wizard__grid.is-single .quoteandcut-hole-wizard__choice-name,
.quoteandcut-hole-wizard__grid.is-single .quoteandcut-hole-wizard__choice-sub {
	white-space: normal;
}

.quoteandcut-hole-wizard__choice-name {
	display: flex;
	align-items: baseline;
	justify-content: center;
	gap: 6px;
}

.quoteandcut-hole-wizard__grid.is-single .quoteandcut-hole-wizard__choice-name {
	flex-wrap: wrap;
}

.quoteandcut-hole-wizard__choice-label {
	font-weight: var(--quoteandcut-weight-bold, 700);
}

.quoteandcut-hole-wizard__choice-price {
	font-weight: var(--quoteandcut-weight-semibold, 600);
}

.quoteandcut-hole-wizard__choice-price::before {
	content: "·";
	margin-inline-end: 6px;
}

.quoteandcut-hole-wizard__opt-detail,
.quoteandcut-hole-wizard__choice-sub {
	font-size: var(--quoteandcut-text-xs, 12px);
	font-weight: var(--quoteandcut-weight-medium, 500);
	color: var(--quoteandcut-text-secondary, #475569);
}

/* Details on a selected button take the button's text colour. */
.quoteandcut-sp-choice.is-selected .quoteandcut-hole-wizard__opt-detail,
.quoteandcut-sp-choice.is-selected .quoteandcut-hole-wizard__choice-sub {
	color: inherit;
}

/* Sizes ruled out by the sheet or the space around the hole. */
.quoteandcut-hole-wizard__choice.is-blocked,
.quoteandcut-hole-wizard__choice.is-blocked:hover {
	border-style: dashed;
	border-color: var(--quoteandcut-border-strong, #8c94a0);
	background: var(--quoteandcut-surface-muted, var(--quoteandcut-bg-color, #f4f7f6));
	color: var(--quoteandcut-text-muted, #687281);
	cursor: not-allowed;
}

.quoteandcut-hole-wizard__choice.is-blocked .quoteandcut-hole-wizard__choice-sub {
	color: var(--quoteandcut-warning-text, #92400e);
}

.quoteandcut-hole-wizard__options .quoteandcut-sp-choice:disabled {
	opacity: 0.5;
	cursor: not-allowed;
}

/* Options for the chosen size: angle, depth and face. */
.quoteandcut-hole-wizard__options {
	display: grid;
	gap: 16px;
	margin: 16px 0 0;
	padding-top: 16px;
	border-top: 1px solid var(--quoteandcut-border-color, #e2e8f0);
}

.quoteandcut-hole-wizard__option .quoteandcut-sp-field__label {
	margin-bottom: 8px;
}

.quoteandcut-hole-wizard__option .quoteandcut-hole-wizard__hole-meta {
	margin: 8px 0 0;
}

.quoteandcut-hole-wizard__depth {
	margin-top: -6px;
}

.quoteandcut-hole-wizard__depth-field {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-size: var(--quoteandcut-text-sm, 13px);
	color: var(--quoteandcut-text-secondary, #475569);
}

.quoteandcut-hole-wizard__depth-field input {
	width: 92px;
	min-height: 40px;
	padding: 0 10px;
	border: 1px solid var(--quoteandcut-border-strong, #8c94a0);
	border-radius: var(--quoteandcut-radius-md, 8px);
	font: inherit;
	font-size: var(--quoteandcut-text-md, 14px);
	color: var(--quoteandcut-text-primary, #1f2937);
	background: var(--quoteandcut-card-bg, #fff);
}

.quoteandcut-hole-wizard__depth-field input:focus-visible {
	outline: 2px solid var(--quoteandcut-accent-ink, var(--quoteandcut-accent-primary, #ff7618));
	outline-offset: 1px;
}

.quoteandcut-hole-wizard__depth .quoteandcut-hole-wizard__hole-meta {
	margin: 6px 0 0;
}

.quoteandcut-hole-wizard__depth-note {
	margin: 6px 0 0;
	font-size: var(--quoteandcut-text-xs, 12px);
	line-height: 1.45;
	color: var(--quoteandcut-warning-text, #92400e);
}

/* Notes and actions. */

.quoteandcut-hole-wizard__hint {
	margin: 12px 0;
	padding: 10px 11px;
	border: 1px solid var(--quoteandcut-warning-border, #fde68a);
	border-radius: var(--quoteandcut-radius-md, 8px);
	background: var(--quoteandcut-warning-soft, #fffbeb);
	color: var(--quoteandcut-warning-text, #92400e);
	font-size: var(--quoteandcut-text-sm, 13px);
	line-height: 1.5;
}

.quoteandcut-hole-wizard__hint strong {
	display: block;
	margin-bottom: 4px;
}

.quoteandcut-hole-wizard__hint ul {
	margin: 4px 0 0 18px;
	padding: 0;
}

.quoteandcut-hole-wizard__hint li {
	margin: 3px 0;
}

/* Resize notes, excluded holes and edge clearance warnings. */
.quoteandcut-hole-wizard__resize-note,
.quoteandcut-hole-wizard__apply-note {
	margin: 10px 0 0;
	font-size: var(--quoteandcut-text-sm, 13px);
	line-height: 1.45;
	color: var(--quoteandcut-text-secondary, #475569);
}

.quoteandcut-hole-wizard__apply-note {
	color: var(--quoteandcut-warning-text, #92400e);
}

.quoteandcut-hole-wizard__edge-warning {
	margin: 0;
	padding: 8px 10px;
	border: 1px solid var(--quoteandcut-warning-border, #f0c36d);
	border-radius: var(--quoteandcut-radius-md, 8px);
	background: var(--quoteandcut-warning-soft, #fffbeb);
	color: var(--quoteandcut-warning-text, #92400e);
	font-size: var(--quoteandcut-text-sm, 13px);
	line-height: 1.45;
}

/* Suggests an insert when the sheet is too thin to tap. */
.quoteandcut-hole-wizard__swap {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px 12px;
	margin: 8px 0 0;
	padding: 10px 11px;
	border: 1px dashed var(--quoteandcut-border-strong, #cbd5e1);
	border-radius: var(--quoteandcut-radius-md, 8px);
	background: var(--quoteandcut-card-bg, #fff);
}

.quoteandcut-hole-wizard__swap p {
	flex: 1 1 200px;
	margin: 0;
	font-size: var(--quoteandcut-text-sm, 13px);
	line-height: 1.45;
	color: var(--quoteandcut-text-secondary, #475569);
}

.quoteandcut-hole-wizard__panel-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 16px;
	padding-top: 16px;
	border-top: 1px solid var(--quoteandcut-border-color, #e2e8f0);
}
