.pfc{--pfc-bg:var(--brand-surface,#fff);--pfc-text-color:var(--brand-ink,#102542);--pfc-muted-color:#1025428c;--pfc-accent:var(--brand-accent,#1e5fcf);--pfc-group-bg:#00000006;--pfc-option-border:#0000001f;--pfc-option-bg-selected:#1e5fcf12;--pfc-preview-bg:#00000008;--pfc-summary-bg:#00000008;--pfc-price-color:var(--brand-accent,#1e5fcf);--pfc-radius:.875rem;--pfc-padding:2rem;--pfc-gap:1.25rem;padding:var(--pfc-padding);background:var(--pfc-bg);color:var(--pfc-text-color);font-family:inherit;display:block}.pfc--stacked .pfc__body{gap:calc(var(--pfc-gap) * 1.5);display:grid}.pfc--side-by-side .pfc__body{gap:calc(var(--pfc-gap) * 2);grid-template-columns:1fr 1fr;align-items:start;display:grid}@media (max-width:768px){.pfc--side-by-side .pfc__body{grid-template-columns:1fr}}.pfc__header{margin-bottom:2rem}.pfc__title{color:var(--pfc-text-color);margin:0 0 .5rem;font-size:1.875rem;font-weight:700;line-height:1.2}.pfc__description{color:var(--pfc-muted-color);margin:0;font-size:1rem;line-height:1.55}.pfc__groups{gap:var(--pfc-gap);display:grid}.pfc__group{border:1px solid var(--pfc-option-border);border-radius:var(--pfc-radius);background:var(--pfc-group-bg);min-width:0;margin:0;padding:1.25rem 1.5rem}.pfc__group-label{color:var(--pfc-text-color);float:none;margin-bottom:.25rem;padding:0;font-size:.9375rem;font-weight:600}.pfc__group-description{color:var(--pfc-muted-color);margin:0 0 .875rem;font-size:.8125rem;line-height:1.45}.pfc__options{gap:.5rem;display:grid}.pfc__select{border:1px solid var(--pfc-option-border);border-radius:calc(var(--pfc-radius) * .6);background:var(--pfc-bg);width:100%;color:var(--pfc-text-color);cursor:pointer;appearance:auto;padding:.625rem .875rem;font-family:inherit;font-size:.9375rem}.pfc__select:focus-visible{outline:2px solid var(--pfc-accent);outline-offset:2px}.pfc__option{border:1px solid var(--pfc-option-border);border-radius:calc(var(--pfc-radius) * .6);background:var(--pfc-bg);cursor:pointer;align-items:flex-start;gap:.75rem;padding:.75rem 1rem;transition:border-color .15s,background .15s;display:flex}.pfc__option:has(input:checked){border-color:var(--pfc-accent);background:var(--pfc-option-bg-selected)}.pfc__option input[type=radio],.pfc__option input[type=checkbox]{cursor:pointer;width:1.125rem;height:1.125rem;accent-color:var(--pfc-accent);flex-shrink:0;margin:.125rem 0 0}.pfc__option-label{flex:1;min-width:0}.pfc__option-name{color:var(--pfc-text-color);font-size:.9375rem;font-weight:500;line-height:1.3;display:block}.pfc__option-desc{color:var(--pfc-muted-color);margin-top:.125rem;font-size:.8125rem;line-height:1.4;display:block}.pfc__option-price{color:var(--pfc-price-color);white-space:nowrap;font-variant-numeric:tabular-nums;flex-shrink:0;margin-top:.125rem;font-size:.875rem;font-weight:600}.pfc__preview{border-radius:var(--pfc-radius);background:var(--pfc-preview-bg);flex-direction:column;gap:.5rem;padding:.75rem;display:flex;overflow:hidden}.pfc__preview-img{border-radius:calc(var(--pfc-radius) * .6);object-fit:cover;width:100%;height:auto;display:block}.pfc__preview-caption{color:var(--pfc-muted-color);text-align:center;padding:0 .25rem;font-size:.8125rem}.pfc__right{gap:var(--pfc-gap);flex-direction:column;display:flex}.pfc__summary{border-radius:var(--pfc-radius);background:var(--pfc-summary-bg);border:1px solid var(--pfc-option-border);padding:1.25rem 1.5rem}.pfc__summary-heading{letter-spacing:.06em;text-transform:uppercase;color:var(--pfc-muted-color);margin:0 0 .875rem;font-size:.875rem;font-weight:600}.pfc__summary-line{border-bottom:1px solid var(--pfc-option-border);justify-content:space-between;align-items:baseline;gap:.5rem;padding:.375rem 0;font-size:.9375rem;display:flex}.pfc__summary-line:last-of-type{border-bottom:none}.pfc__summary-key{color:var(--pfc-muted-color);font-size:.875rem}.pfc__summary-val{color:var(--pfc-text-color);text-align:right;font-size:.875rem;font-weight:500}.pfc__total{border-top:2px solid var(--pfc-option-border);justify-content:space-between;align-items:baseline;gap:.5rem;margin-top:.5rem;padding-top:.875rem;display:flex}.pfc__total-label{color:var(--pfc-text-color);font-size:1rem;font-weight:700}.pfc__total-price{color:var(--pfc-price-color);font-variant-numeric:tabular-nums;font-size:1.5rem;font-weight:700}.pfc__actions{flex-direction:column;gap:.75rem;display:flex}.pfc--stacked .pfc__right{order:2}.pfc--stacked .pfc__groups{order:1}.pfc__visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}
