.option-editor-tools{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0}.option-editor-tools select{flex:1;min-width:130px;min-height:44px}.option-choice-row{display:flex;align-items:end;gap:10px;border-top:1px solid var(--line);padding:14px 0;flex-wrap:wrap}.option-choice-row>.field{flex:1;min-width:120px}.option-choice-row>.field input{width:100%}.option-check{display:flex;align-items:center;gap:6px;min-height:44px}.option-check input[type=checkbox]{width:20px;height:20px}.option-default{border:1px solid var(--line);font-weight:500}.option-default.selected{border-color:var(--green);color:var(--green);background:var(--ui-soft, #edf2eb)}.option-fieldset{border:0;margin:0;padding:0;min-width:0}.option-price-summary{padding:12px;background:var(--ui-soft, #edf2eb);border-radius:8px;font-size:14px}.product-options-editor .option-title{align-items:end}.product-options-editor button{min-height:44px}.product-options-editor .option-group{margin:16px 0}.product-options-editor .option-group>.muted{margin:8px 0 12px}.option-choice-row button{white-space:nowrap}@media(max-width:600px){.option-choice-row>.field{flex-basis:calc(50% - 12px);min-width:100px}.option-choice-row>.option-check{flex-basis:100%}.option-editor-tools{gap:8px}.option-editor-tools select{min-width:110px}.product-options-editor .option-title{gap:8px}.product-options-editor .option-title>.field{min-width:0;flex:1}}

.product-options-editor .option-group{border:0;border-bottom:1px solid var(--line);border-radius:0;padding:0 0 12px;margin:0 0 8px}.option-group>summary{display:flex;align-items:center;cursor:pointer;gap:12px;min-height:64px;padding:12px 0;list-style:none}.option-group>summary::-webkit-details-marker{display:none}.option-group>summary:after{content:'编辑';font-size:13px;color:var(--green)}.option-group[open]>summary:after{content:'收起'}.option-summary-content{flex:1;min-width:0}.option-summary{display:block;color:var(--muted);font-size:12px;margin-top:4px;overflow-wrap:anywhere}.option-footer{display:flex;justify-content:space-between;gap:12px}.category-extras>summary{min-height:44px;display:flex;justify-content:space-between;align-items:center;border:1px solid var(--line);border-radius:8px;padding:10px 12px;cursor:pointer;list-style:none}.category-extras>summary:after{content:'⌄';margin-left:12px}.category-extras .checks{display:flex;flex-direction:column;align-items:stretch;max-height:220px;overflow-y:auto;padding:8px 12px;border:1px solid var(--line);border-top:0}.category-extras label{min-height:44px}.category-extras-title{display:block;font-size:13px;color:var(--muted);margin-bottom:6px}.category-extras>summary::-webkit-details-marker{display:none}

/* The library is a reusable template editor; product editing keeps its own layout. */
.option-library-dialog{max-width:820px;background:var(--ui-canvas)}.option-library-dialog .dialog-body{padding-top:0}.library-form{display:flex;flex-direction:column;gap:0}.library-editor{padding:16px 0 24px}.library-tabs{display:flex;gap:6px;background:#fff;padding:4px;border-radius:12px;margin-bottom:16px}.library-tab{flex:1;min-width:0;min-height:44px;border:0;border-radius:9px;background:transparent;color:var(--muted);font:inherit;font-size:13px}.library-tab[aria-selected=true]{background:var(--ui-soft);color:var(--green);font-weight:700}.library-notice{color:var(--muted);font-size:12px;line-height:20px;margin:0 2px 20px}.library-card{border:1px solid transparent;background:#fff;border-radius:16px;margin-bottom:16px;padding:14px 16px 16px}.library-group-toggle{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:52px;padding:0;background:none;border:0;text-align:left;color:var(--ui-ink)}.library-group-copy{flex:1;min-width:0}.library-group-copy strong{display:block;font-size:16px;line-height:24px;margin-bottom:4px}.library-meta{display:block;font-size:12px;line-height:20px;color:var(--muted);overflow-wrap:anywhere}.library-group-toggle img{width:16px;height:16px;transform:rotate(90deg)}.library-group-toggle img.up{transform:rotate(-90deg)}.library-group-name{display:flex;align-items:center;gap:12px;margin:14px 0 12px}.library-group-name>span{font-size:12px;color:var(--muted);width:54px;flex:none}.library-group-name input{flex:1;width:0;min-width:0;min-height:44px;padding:0 12px;border-radius:8px}.library-choices{border:1px solid var(--line);border-radius:10px;overflow:hidden}.library-choice{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:2px;min-height:68px;padding:10px 4px;border-bottom:1px solid var(--line)}.library-choice:last-child{border-bottom:0}.library-choice.addon{grid-template-columns:minmax(0,1fr) 90px 44px;padding-left:12px;gap:8px}.library-default{width:44px;height:44px;display:flex;align-items:center;justify-content:center}.library-default input{width:18px;height:18px;min-height:0;padding:0;accent-color:var(--green)}.library-choice-copy{min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:4px}.library-choice textarea{width:100%;min-height:44px;resize:none;overflow:hidden;box-sizing:border-box;padding:11px 0;border:0;border-radius:0;line-height:22px;background:transparent;font-size:14px}.library-default-badge{padding:1px 5px;border-radius:4px;font-size:11px;line-height:18px;color:var(--green);background:var(--ui-soft)}.library-money{display:flex;align-items:center;gap:3px;min-width:0;font-family:var(--ui-font-number);font-size:14px}.library-money input{width:100%;min-width:0;min-height:44px;padding:0;border:0;text-align:right;border-radius:0;font-family:inherit}.library-more{width:44px;min-height:44px;padding:0;border:0;border-radius:8px;background:none;font-size:12px;color:var(--muted)}.library-group-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:12px 0}.library-group-actions button{min-height:44px;border:0;border-radius:8px;padding:0 12px;font-size:13px}.library-add-choice{background:var(--ui-soft);color:var(--green)}.library-remove-group{background:transparent;color:var(--ui-error)}.library-rules{border-top:1px solid var(--line);padding-top:4px}.library-rules label{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:52px;padding:6px 0;font-size:13px}.library-rules label+label{border-top:1px solid #f1f3ee}.library-rules input{width:24px;height:24px;min-height:0;margin:10px;accent-color:var(--green)}.library-help,.library-empty{font-size:12px;color:var(--muted);line-height:20px}.library-help{margin:10px 0 0}.library-add-group{width:100%;min-height:48px!important;border-radius:10px!important}.library-savebar{position:sticky;bottom:0;display:flex;gap:12px;align-items:center;padding:12px 0;background:var(--ui-canvas);border-top:1px solid var(--line)}.library-savebar>button[type=submit]{min-height:48px;min-width:180px;margin-left:auto;border-radius:10px}.library-save-error,.library-field-error{font-size:12px;line-height:20px;color:var(--ui-error);margin:0}.library-field-error:empty,.library-save-error:empty{display:none}.library-card.invalid{border-color:var(--ui-error)}.library-editor [aria-invalid=true]{outline:1px solid var(--ui-error)}.library-editor button{cursor:pointer}.library-editor button:disabled{cursor:default;opacity:.5}.library-editor :focus-visible{outline:2px solid var(--green);outline-offset:2px}@media(max-width:600px){.option-library-dialog .dialog-body{padding:0 16px}.library-card{padding-left:14px;padding-right:14px}.library-choice.addon{grid-template-columns:minmax(0,1fr) 78px 44px;gap:4px;padding-left:10px}.library-savebar{flex-wrap:wrap;padding-bottom:max(12px,env(safe-area-inset-bottom))}.library-savebar>button[type=submit]{width:100%}.library-save-error{flex:1}.library-group-actions{gap:8px}.library-group-actions button{padding:0 8px}}

.library-savebar>[hidden]{display:none}

.option-library-dialog .dialog-body{background:var(--ui-canvas)}.library-group-name input{border:1px solid var(--ui-line);color:var(--ui-ink);background:#fff;box-shadow:none;font:inherit;font-size:14px}.library-rules input[role=switch]{appearance:none;width:42px;height:26px;border:0;border-radius:14px;background:var(--ui-line);position:relative;margin:9px 0;cursor:pointer}.library-rules input[role=switch]::after{content:'';position:absolute;left:3px;top:3px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #183f5020}.library-rules input[role=switch]:checked{background:var(--ui-green)}.library-rules input[role=switch]:checked::after{transform:translateX(16px)}.library-rules label{cursor:pointer}.library-savebar>button[type=submit]:disabled{background:#e5eae3;color:#687466;opacity:1}
