.cfg-title{margin-bottom:var(--space-4)}.cfg-island{margin-top:var(--space-6)}.cfg-legend{font-family:var(--font-display);font-optical-sizing:auto;font-size:var(--text-xl);letter-spacing:-.02em;margin-bottom:var(--space-3);color:var(--color-fg);font-weight:700}.cfg-section{margin-top:var(--space-6);padding-top:var(--space-6);border-top:1px solid var(--color-border)}.cfg-muted{color:var(--color-fg-3)}.cfg-k{font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--color-fg-3);margin-bottom:.35rem;font-weight:700;display:block}.cfg-choice{border:1px solid var(--color-border-strong);border-radius:var(--radius-btn);background:var(--color-surface);cursor:pointer;min-height:5.25rem;transition:border-color var(--motion), background-color var(--motion), transform var(--motion);flex-direction:column;gap:.15rem;padding:.8rem .9rem;display:flex;position:relative}.cfg-choice:hover{border-color:var(--color-fg-3)}.cfg-choice.is-checked{border-color:var(--color-accent);background:var(--color-surface-2);box-shadow:inset 0 0 0 1px var(--color-accent)}.cfg-choice:has(input:focus-visible){outline:3px solid var(--color-focus);outline-offset:2px}.cfg-choice-name{font-family:var(--font-display);font-optical-sizing:auto;letter-spacing:-.02em;color:var(--color-fg);font-size:1.35rem;font-weight:700}.cfg-choice-price{font-weight:700;font-size:var(--text-sm);color:var(--color-fg-2)}.cfg-choice.is-checked .cfg-choice-price{color:var(--color-accent)}.cfg-choice-state{font-size:var(--text-xs);color:var(--color-fg-3)}.cfg-option{gap:var(--space-3);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-btn);background:var(--color-surface);cursor:pointer;transition:border-color var(--motion), background-color var(--motion);color:var(--color-fg);grid-template-columns:1.4rem 1fr;align-items:start;display:grid}.cfg-option:hover{border-color:var(--color-border-strong)}.cfg-option.is-checked{border-color:var(--color-accent);background:var(--color-surface-2)}.cfg-option.is-unavailable{background:0 0;border-style:dashed}.cfg-option.is-unavailable .tag:last-child{border-color:var(--color-warning-border,var(--color-border-strong));color:var(--color-fg-2)}.cfg-option input{width:1.4rem;height:1.4rem;accent-color:var(--color-accent);margin:.1rem 0 0}.cfg-summary{padding:var(--space-5)}.cfg-summary-title{font-size:var(--text-xl);margin-bottom:var(--space-4)}.cfg-rows{margin:0}.cfg-rows>div{justify-content:space-between;gap:var(--space-4);border-bottom:1px solid var(--color-border);font-size:var(--text-sm);padding:.5rem 0;display:flex}.cfg-rows dt{color:var(--color-fg-3)}.cfg-rows dd{text-align:right;color:var(--color-fg);margin:0}.cfg-totals{margin-top:var(--space-4);border-top:1px solid var(--color-border-strong)}.cfg-total{font-size:var(--text-md)}.cfg-total dt{color:var(--color-fg);font-weight:700}.cfg-total dd{color:var(--color-accent);font-size:1.5rem}.cfg-price-swap{animation:cfg-fade var(--motion) ease-out;display:inline-block}@keyframes cfg-fade{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.cfg-availability{margin:var(--space-4) 0 var(--space-3);font-weight:700;font-size:var(--text-sm)}.cfg-note{margin:var(--space-4) 0 0;font-size:var(--text-xs);color:var(--color-fg-3)}
