/* Native option primitives. The mapped Artisans layout supplies the current product design. */
.apc-container,.apc-container *,.apc-popup,.apc-popup * {box-sizing:border-box}
.apc-container {width:100%;min-width:0}
.apc-container [hidden],.apc-error[hidden],.apc-edit-error[hidden],.apc-popup[hidden] {display:none!important}
.apc-container .options {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.apc-container .apc-option {position:relative;min-width:0;max-width:100%}
.apc-container .apc-option>input[type="checkbox"] {display:none!important}
.apc-container .apc-addon-label {position:relative;display:block;height:100%;width:100%;margin:0;cursor:pointer;color:inherit;text-align:inherit;font:inherit;white-space:normal}
.apc-container .apc-addon-label:focus-visible {outline:2px solid var(--artisans-gold-ink,#79643e);outline-offset:3px}
.apc-container .apc-addon-label label {cursor:pointer}
.apc-container .label-container-display {position:relative;min-width:0}
.apc-container .color {position:relative;flex-shrink:0}
.apc-container .apc-option.selected .label-container-display::after,
.apc-container .apc-option.selected .color::after {content:"✓";position:absolute;right:5px;top:5px;display:grid;place-items:center;width:14px;height:14px;border-radius:50%;background:var(--artisans-gold-ink,#79643e);color:#fff;font:700 10px/1 sans-serif;pointer-events:none}
.apc-container .apc-option.selected .color::after {right:-4px;top:-4px}
.apc-container .image-container img {display:block;max-width:100%}
.apc-container .option-container {min-width:0}
.apc-container .option-container>small,.apc-container .label_price>label {overflow-wrap:break-word}
.apc-container .option-price {white-space:nowrap}
.apc-container .ac-no-bulb {white-space:normal}
.apc-container .apc-addon[data-type="text"] .options {grid-template-columns:minmax(0,1fr)!important}
.apc-container .apc-addon[data-type="text"] label {display:block;margin-bottom:6px}
.apc-container .apc-input-text {display:block;width:100%;min-height:46px;margin:0;font:400 16px/1.5 Mulish,sans-serif}
.apc-container .apc-error {padding:12px;margin:12px 0;border:1px solid var(--artisans-gold,#c1ab7a);color:var(--artisans-green,#132523);font:400 14px/1.5 Mulish,sans-serif}
.apc-total-price-table {width:100%}
.apc-total-price-table table {border-collapse:collapse;width:100%}
.apc-total-price-table th {text-align:left}
.apc-total-price-table td {text-align:right}
.apc-total-price-table tr:last-child th,.apc-total-price-table tr:last-child td {padding-top:12px;color:var(--ac-ink,var(--artisans-green,#132523));font-size:18px!important;font-weight:600}

/* The current Artisans menu stylesheet refines this same modal structure. */
.apc-popup {position:fixed;inset:0;z-index:100010;background:rgba(0,0,0,.55);color:var(--artisans-green,#132523);font:400 14px/1.5 Mulish,sans-serif}
.apc-popup:not([hidden]) {display:block}
.apc-wrapper {position:absolute;top:12px;bottom:12px;left:50%;transform:translateX(-50%);width:calc(100% - 24px);max-width:680px;height:calc(100dvh - 24px);max-height:calc(100dvh - 24px);margin:0}
.apc-main {display:flex;flex-direction:column;width:100%;height:100%;max-height:100%;background:#f7f6f4}
.apc-head {display:flex;align-items:center;flex:none;gap:12px;min-height:68px;padding:12px 16px;border-bottom:1px solid #d8d2c6}
.apc-head .edit-options-label {font:500 20px/1.35 Mulish,sans-serif;text-align:left}
.apc-close {display:block;flex:0 0 44px;width:44px;height:44px;min-width:44px;min-height:44px;margin:0 0 0 auto;padding:0;border:0;background:transparent;color:inherit;font:400 28px/1 Mulish,sans-serif;cursor:pointer}
.apc-close:hover {background:transparent;color:inherit}
.apc-content {flex:1;min-height:0;width:100%;padding:16px;overflow:auto;overscroll-behavior:contain;--ac-ink:var(--artisans-green,#173b32);--ac-gold:var(--artisans-gold,#c1ab7a);--ac-line:#d9d5ca;--ac-muted:#606660;--ac-paper:#f7f6f4}
.apc-content .product_title {font:500 21px/1.35 Mulish,sans-serif;margin:0 0 12px}
.apc-content .apc-edit-quantity {display:flex;align-items:center;gap:12px;margin:16px 0 0}
.apc-content input.qty {width:90px;min-height:44px;padding:8px 12px;border:1px solid #bbc2b8;background:#fff;font:400 16px/1.5 Mulish,sans-serif}
.apc-footer {flex:none;width:100%;padding:14px 16px;border-top:1px solid #d8d2c6;background:#f7f6f4}
.apc-footer .apc-save {width:100%;min-height:48px;padding:12px 16px;border:0;border-radius:2px;background:var(--artisans-green,#132523);color:#fff;font:600 15px/1.4 Mulish,sans-serif;cursor:pointer}
.apc-footer .apc-save:disabled {cursor:wait;opacity:.65}
.apc-edit-error {margin:10px 0 0;font:400 14px/1.5 Mulish,sans-serif}
.apc-popup :is(a,button,input,select):focus-visible {outline:2px solid var(--artisans-gold,#c1ab7a);outline-offset:2px}
.apc-popup .apc-content :is(#apc-addon-1,.apc-addon[data-group="1"]) .options {grid-template-columns:repeat(3,minmax(0,1fr))!important}
.apc-content .apc-addon[data-group="26"] .options {grid-template-columns:minmax(0,1fr)!important}
@media(max-width:767px){.apc-container .option-price{white-space:normal}.apc-content .apc-option{overflow-wrap:anywhere}}
