:root{--bg-primary: #dfe9f7;--bg-secondary: #ffffff;--bg-input: #eaeaee;--text-primary: #1a2840;--text-secondary: #3d6fab;--text-muted: #71717a;--accent: #3d6fab;--accent-hover: #345a92;--accent-light: #c6d9f0;--border: #d4d4d8;--success: #4f7ec0;--error: #dc2626;--error-bg: #fef2f2;--warning: #d97706;--drop-indicator: #2563c9;--drop-glow: rgba(61, 111, 171, .22);--font-display: "Cormorant Garamond", "Cormorant", Georgia, "Times New Roman", serif;--control-h: 40px;--control-pad-y: .55rem;--control-pad-x: .6rem;--control-font: .95rem;--control-font-sm: .85rem;--tap-btn: 34px;--preset-pad-y: .5rem;--preset-pad-x: .75rem;--preset-font: .85rem;--row-pad: .55rem;--row-gap: .45rem;--card-pad: .95rem}body.dark{--bg-primary: #1a2840;--bg-secondary: #2b4063;--bg-input: #2f4b77;--text-primary: #fafafa;--text-secondary: #9db8e5;--text-muted: #c8cad4;--accent: #7099d8;--accent-hover: #9db8e5;--accent-light: #2f4b77;--border: #345a92;--success: #9db8e5;--error: #f87171;--error-bg: #450a0a;--warning: #fbbf24;--drop-indicator: #a9d0ff;--drop-glow: rgba(169, 208, 255, .28)}html{scrollbar-gutter:stable}html,body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--bg-primary);color:var(--text-primary);transition:background .2s,color .2s;overflow-x:hidden;width:100%;min-height:100vh}main.svelte-1uha8ag{max-width:1200px;min-width:320px;width:100%;margin:0 auto;padding:1.5rem;box-sizing:border-box;overflow-x:hidden}.brand-bar.svelte-1uha8ag{display:flex;justify-content:center;padding:1rem 0 1.5rem}.brand-logo.svelte-1uha8ag{max-height:10vh;width:auto;max-width:60%;object-fit:contain}body.dark .brand-logo.svelte-1uha8ag{filter:brightness(0) invert(1)}.brand-link.svelte-1uha8ag{display:contents}.brand-link.svelte-1uha8ag:focus-visible .brand-logo:where(.svelte-1uha8ag){outline:2px solid var(--accent);outline-offset:4px;border-radius:8px}.header.svelte-1uha8ag{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.header-actions.svelte-1uha8ag{display:flex;gap:.5rem;align-items:center}h1.svelte-1uha8ag{margin:0;font-size:2rem;font-family:var(--font-display);font-weight:600;letter-spacing:.01em}.icon-btn.svelte-1uha8ag{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;background:var(--bg-secondary);border:1px solid var(--border);border-radius:6px;color:var(--text-muted);font-size:1rem;line-height:1;cursor:pointer;transition:all .15s}.info-toggle.svelte-1uha8ag:hover,.info-toggle.active.svelte-1uha8ag{color:var(--accent);border-color:var(--accent);background:var(--accent-light)}.clear-all-btn.svelte-1uha8ag:hover{color:var(--error);border-color:var(--error);background:var(--error-bg)}.clear-confirm-bar.svelte-1uha8ag{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.65rem 1rem;background:var(--error-bg);border:1px solid var(--error);border-radius:8px;margin-bottom:1rem;font-size:.82rem;color:var(--text-primary);flex-wrap:wrap}.clear-confirm-actions.svelte-1uha8ag{display:flex;gap:.4rem;flex-shrink:0}.clear-confirm-yes.svelte-1uha8ag{padding:.35rem .75rem;border:1px solid var(--error);background:var(--error);color:#fff;border-radius:5px;cursor:pointer;font-size:.75rem;font-weight:600;transition:opacity .15s}.clear-confirm-yes.svelte-1uha8ag:hover{opacity:.9}.clear-confirm-no.svelte-1uha8ag{padding:.35rem .75rem;border:1px solid var(--border);background:var(--bg-secondary);color:var(--text-muted);border-radius:5px;cursor:pointer;font-size:.75rem}.clear-confirm-no.svelte-1uha8ag:hover{border-color:var(--text-muted);color:var(--text-primary)}.theme-toggle.svelte-1uha8ag{color:var(--text-primary);font-size:1.05rem}.theme-toggle.svelte-1uha8ag:hover{color:var(--accent);border-color:var(--accent)}.info-overlay.svelte-1uha8ag{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:2000;padding:1rem;animation:svelte-1uha8ag-info-fade-in .15s ease-out}@keyframes svelte-1uha8ag-info-fade-in{0%{opacity:0}to{opacity:1}}.info-panel.svelte-1uha8ag{position:relative;background:var(--bg-secondary);border:1px solid var(--border);border-radius:10px;padding:3rem 1.5rem 1.5rem;max-width:600px;width:100%;max-height:85vh;overflow-y:auto;box-shadow:0 10px 40px #0000004d}.info-close.svelte-1uha8ag{position:absolute;top:.6rem;right:.6rem;width:40px;height:40px;padding:0;border:none;background:transparent;color:var(--text-muted);font-size:1.65rem;line-height:1;border-radius:6px;cursor:pointer;transition:all .15s;z-index:1}.info-close.svelte-1uha8ag:hover{color:var(--error);background:var(--bg-input)}.info-grid.svelte-1uha8ag{display:flex;flex-direction:column;gap:.6rem}.info-item.svelte-1uha8ag{font-size:.85rem;color:var(--text-secondary);line-height:1.5}.info-item.svelte-1uha8ag strong:where(.svelte-1uha8ag){color:var(--text-primary);font-family:var(--font-display);font-weight:600;font-size:1.05em}.glyph.svelte-1uha8ag{font-family:var(--font-display);color:var(--accent);font-size:1.15em;margin-right:.15em;line-height:1}.info-note.svelte-1uha8ag{margin:.75rem 0 0;padding-top:.6rem;border-top:1px solid var(--border);font-size:.75rem;color:var(--text-muted);line-height:1.5;text-align:center}.sub-header.svelte-1uha8ag{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:1.25rem;position:sticky;top:0;z-index:100;background:var(--bg-primary);padding:.35rem 0 .65rem;align-items:stretch}.sub-header-right.svelte-1uha8ag{display:flex;flex-direction:column;gap:.4rem;min-width:0}.tool-nav.svelte-1uha8ag{display:grid;grid-template-columns:repeat(3,1fr);gap:.3rem;background:var(--bg-secondary);padding:.35rem;border-radius:8px;border:1px solid var(--border)}.tool-nav.svelte-1uha8ag button:where(.svelte-1uha8ag){padding:.6rem .5rem;border:none;background:transparent;color:var(--text-muted);border-radius:6px;cursor:pointer;font-family:var(--font-display);font-size:1.15rem;font-weight:600;letter-spacing:.01em;text-align:center;transition:all .15s;white-space:nowrap;min-width:0}.tool-nav.svelte-1uha8ag button:where(.svelte-1uha8ag):hover{color:var(--text-secondary);background:var(--bg-input)}.tool-nav.svelte-1uha8ag button.active:where(.svelte-1uha8ag){background:var(--accent);color:#fff}.io-toggle.svelte-1uha8ag{display:flex;gap:0;background:var(--bg-secondary);border-radius:8px;border:1px solid var(--border);padding:.3rem}.io-toggle.svelte-1uha8ag button:where(.svelte-1uha8ag){flex:1;padding:.55rem 1rem;border:none;background:transparent;color:var(--text-muted);border-radius:6px;cursor:pointer;font-family:var(--font-display);font-size:1.15rem;font-weight:600;letter-spacing:.01em;transition:all .15s}.io-toggle.svelte-1uha8ag button:where(.svelte-1uha8ag):hover{color:var(--text-secondary)}.io-toggle.svelte-1uha8ag button.active:where(.svelte-1uha8ag){background:var(--accent);color:#fff}.layout.svelte-1uha8ag{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:1.25rem;align-items:start}.tools-column.svelte-1uha8ag{display:flex;flex-direction:column;gap:1rem;min-width:0;align-items:stretch}.accordion-section.svelte-1uha8ag{background:var(--bg-secondary);border-radius:10px;border:1px solid var(--border);overflow-x:clip;overflow-y:visible;min-width:0;width:100%}.section-header.svelte-1uha8ag{display:flex;justify-content:space-between;align-items:center;width:100%;padding:.85rem 1.25rem;border:none;background:none;color:var(--text-primary);font-family:var(--font-display);font-size:1.25rem;font-weight:600;letter-spacing:.01em;cursor:pointer;transition:color .15s}.section-header.svelte-1uha8ag:hover{color:var(--accent)}.section-header.svelte-1uha8ag:focus{outline:none}.section-header.svelte-1uha8ag:focus-visible{outline:2px solid var(--accent);outline-offset:-3px;border-radius:8px;color:var(--accent)}.section-title.svelte-1uha8ag{display:flex;align-items:center;gap:.5rem}.chevron.svelte-1uha8ag{font-size:.85rem;color:var(--text-muted);transition:transform .2s ease;display:inline-block}.chevron.open.svelte-1uha8ag{transform:rotate(90deg)}.section-body.svelte-1uha8ag{padding:1.25rem 1.25rem 1.5rem;border-top:1px solid var(--border);min-width:0}.section-body.collapsed.svelte-1uha8ag{display:none}.tool-synopsis.svelte-1uha8ag{margin:0 0 1rem;color:var(--text-secondary);font-size:.85rem;line-height:1.5}.tool-page-link.svelte-1uha8ag{white-space:nowrap;color:var(--accent);text-decoration:none;font-weight:600}.tool-page-link.svelte-1uha8ag:hover{text-decoration:underline}.output-column.svelte-1uha8ag{position:sticky;top:60px;max-height:calc(100vh - 80px);overflow-y:auto;display:flex;flex-direction:column;gap:.5rem}.import-panel.svelte-1uha8ag{display:flex;flex-direction:column;gap:.65rem}.import-section.svelte-1uha8ag{display:flex;flex-direction:column;gap:.35rem}.import-label.svelte-1uha8ag{font-family:var(--font-display);font-size:1.1rem;font-weight:500;letter-spacing:.01em;color:var(--text-primary);margin:0 auto;padding:0 .4rem}.import-textarea.svelte-1uha8ag{width:100%;padding:.65rem;border:1px solid var(--border);border-radius:8px;background:var(--bg-secondary);color:var(--text-primary);font-family:SF Mono,Fira Code,Consolas,monospace;font-size:.78rem;line-height:1.5;resize:vertical;box-sizing:border-box;transition:border-color .15s}.import-textarea.svelte-1uha8ag:focus{outline:none;border-color:var(--accent)}.import-textarea.svelte-1uha8ag::placeholder{color:var(--text-muted);font-style:italic;font-family:inherit}.import-preview.svelte-1uha8ag{background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;overflow:hidden}.preview-header.svelte-1uha8ag{display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem;border-bottom:1px solid var(--border);font-family:var(--font-display);font-size:1rem;font-weight:600;letter-spacing:.01em;color:var(--text-primary)}.preview-format.svelte-1uha8ag{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-weight:400;font-size:.7rem;color:var(--text-muted)}.preview-items.svelte-1uha8ag{max-height:200px;overflow-y:auto}.preview-row.svelte-1uha8ag{display:flex;align-items:baseline;gap:.4rem;padding:.35rem .75rem;font-size:.75rem;border-bottom:1px solid var(--border)}.preview-row.svelte-1uha8ag:last-child{border-bottom:none}.preview-icon.svelte-1uha8ag{flex-shrink:0;font-family:var(--font-display);font-size:.85rem;width:1rem;text-align:center;line-height:1}.preview-row.matched.svelte-1uha8ag .preview-icon:where(.svelte-1uha8ag){color:var(--success)}.preview-row.partial.svelte-1uha8ag .preview-icon:where(.svelte-1uha8ag){color:var(--warning)}.preview-row.unmatched.svelte-1uha8ag .preview-icon:where(.svelte-1uha8ag){color:var(--warning)}.preview-row.failed.svelte-1uha8ag .preview-icon:where(.svelte-1uha8ag){color:var(--error)}.preview-text.svelte-1uha8ag{flex:1;color:var(--text-primary);min-width:0}.preview-row.failed.svelte-1uha8ag .preview-text:where(.svelte-1uha8ag){color:var(--text-muted);text-decoration:line-through}.preview-note.svelte-1uha8ag{font-size:.68rem;color:var(--text-muted);flex-shrink:0}.preview-failed.svelte-1uha8ag{border-top:1px solid var(--border)}.preview-failed-header.svelte-1uha8ag{padding:.4rem .75rem .1rem;font-size:.7rem;color:var(--error);font-weight:500}.preview-summary.svelte-1uha8ag{padding:.45rem .75rem;font-size:.7rem;color:var(--text-muted);border-top:1px solid var(--border);background:var(--bg-input)}.import-btn.svelte-1uha8ag{padding:.6rem 1rem;border:none;background:var(--accent);color:#fff;border-radius:8px;cursor:pointer;font-family:var(--font-display);font-size:1rem;font-weight:600;letter-spacing:.01em;transition:background .15s}.import-btn.svelte-1uha8ag:hover{background:var(--accent-hover)}.import-btn.svelte-1uha8ag:disabled{opacity:.4;cursor:not-allowed}.import-help.svelte-1uha8ag{background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;padding:.85rem 1rem;color:var(--text-secondary);line-height:1.5;text-align:left}.import-help-title.svelte-1uha8ag{font-family:var(--font-display);font-size:1rem;font-weight:600;letter-spacing:.01em;color:var(--text-primary);margin-bottom:.45rem}.import-help-list.svelte-1uha8ag{margin:0;padding-left:1.1rem;font-size:.82rem;list-style:disc}.import-help-list.svelte-1uha8ag li:where(.svelte-1uha8ag){margin:.2rem 0;line-height:1.45}.import-help.svelte-1uha8ag code:where(.svelte-1uha8ag){font-family:SF Mono,Fira Code,Consolas,monospace;font-size:.78rem;background:var(--bg-input);padding:.1rem .35rem;border-radius:3px;color:var(--text-primary)}.header-name-row.svelte-1uha8ag{display:flex;align-items:center;background:var(--bg-secondary);border-radius:8px;border:1px solid var(--border);padding:.5rem}.header-name-row.hidden-placeholder.svelte-1uha8ag{visibility:hidden}.header-name-input.svelte-1uha8ag{flex:1;min-width:0;padding:.45rem .65rem;border:1px dashed var(--border);border-radius:6px;background:var(--bg-input);color:var(--text-primary);font-family:var(--font-display);font-size:1.1rem;font-weight:600;letter-spacing:.01em;box-sizing:border-box;transition:border-color .15s}.header-name-input.svelte-1uha8ag:focus{outline:none;border-color:var(--accent);border-style:solid}.header-name-input.svelte-1uha8ag::placeholder{color:var(--text-muted);font-weight:400;font-style:italic}.tools-meta-row.svelte-1uha8ag,.export-meta-row.svelte-1uha8ag{display:flex;align-items:center;padding:0 .15rem;min-height:1.85rem;margin-top:-.25rem}.tools-meta-row.svelte-1uha8ag{margin-bottom:-.5rem}.tools-meta-row.svelte-1uha8ag .toggle-all-btn:where(.svelte-1uha8ag),.export-meta-row.svelte-1uha8ag .toggle-all-btn:where(.svelte-1uha8ag){margin-left:auto}.toggle-all-btn.svelte-1uha8ag{display:inline-flex;align-items:center;gap:.35rem;padding:.3rem .55rem;border:1px solid transparent;background:transparent;color:var(--text-muted);border-radius:5px;cursor:pointer;font-family:var(--font-display);font-size:.9rem;font-weight:500;letter-spacing:.01em;transition:all .15s}.toggle-all-btn.svelte-1uha8ag:hover{color:var(--accent);border-color:var(--border);background:var(--bg-secondary)}.chevron.mini.svelte-1uha8ag{font-size:.7rem}.output-section.svelte-1uha8ag{background:var(--bg-secondary);border-radius:8px;border:1px solid var(--border)}.output-header.svelte-1uha8ag{display:flex;justify-content:space-between;align-items:center;width:100%;padding:.6rem .85rem;border:none;background:none;color:var(--text-primary);font-family:var(--font-display);font-size:1.05rem;font-weight:600;letter-spacing:.01em;cursor:pointer;transition:color .15s;gap:.5rem}.output-header.svelte-1uha8ag:hover{color:var(--accent)}.output-header.svelte-1uha8ag span:where(.svelte-1uha8ag):first-child{flex:1;text-align:left}.has-data.svelte-1uha8ag{color:var(--accent);font-size:.5rem;flex:none}.output-body.svelte-1uha8ag{padding:0 .85rem .85rem;font-size:.8rem}.output-body-top.svelte-1uha8ag{display:flex;justify-content:space-between;align-items:flex-start;gap:.5rem;margin-bottom:.4rem}.output-body-top.svelte-1uha8ag .output-line:where(.svelte-1uha8ag){flex:1}.section-copy-btn.svelte-1uha8ag{padding:.2rem .45rem;border:1px solid var(--border);background:var(--bg-input);border-radius:4px;cursor:pointer;font-family:var(--font-display);font-size:.95rem;color:var(--text-secondary);transition:all .15s;flex-shrink:0;line-height:1}.section-copy-btn.svelte-1uha8ag:hover{border-color:var(--accent);background:var(--accent-light);color:var(--accent)}.output-empty.svelte-1uha8ag{color:var(--text-muted);font-style:italic;text-align:center;padding:.75rem 0;margin:0;font-size:.75rem}.output-line.svelte-1uha8ag{color:var(--text-primary);padding:.25rem 0;line-height:1.5}.output-line.svelte-1uha8ag strong:where(.svelte-1uha8ag){color:var(--accent)}.output-note.svelte-1uha8ag{color:var(--text-muted);font-size:.75rem}.pan-arrow.svelte-1uha8ag{font-weight:700;color:var(--accent);font-size:.8rem;padding:.15rem 0}.batch-badge.svelte-1uha8ag{display:inline-block;padding:.15rem .5rem;background:var(--accent);color:#fff;border-radius:4px;font-size:.7rem;font-weight:600}.recipe-table.svelte-1uha8ag{width:100%;border-collapse:collapse;font-size:.8rem}.recipe-table.svelte-1uha8ag th:where(.svelte-1uha8ag){text-align:left;padding:.4rem .5rem;border-bottom:1px solid var(--border);color:var(--text-muted);font-size:.65rem;text-transform:uppercase;letter-spacing:.04em;font-weight:600}.recipe-table.svelte-1uha8ag td:where(.svelte-1uha8ag){padding:.35rem .5rem;border-bottom:1px solid var(--border);color:var(--text-primary)}.recipe-table.svelte-1uha8ag tr:where(.svelte-1uha8ag):last-child td:where(.svelte-1uha8ag){border-bottom:none}.recipe-table.svelte-1uha8ag tr.warning:where(.svelte-1uha8ag) td:where(.svelte-1uha8ag){color:var(--warning)}.qty-cell.svelte-1uha8ag{font-weight:600;color:var(--accent);white-space:nowrap}.copy-controls.svelte-1uha8ag{display:flex;gap:.5rem;padding:.6rem;background:var(--bg-secondary);border-radius:8px;border:1px solid var(--border)}.copy-controls.svelte-1uha8ag select:where(.svelte-1uha8ag){flex:1;padding:.4rem;border:1px solid var(--border);border-radius:5px;background:var(--bg-input);color:var(--text-primary);font-size:.75rem}.copy-all-btn.svelte-1uha8ag{padding:.4rem .85rem;border:1px solid var(--accent);background:var(--accent);color:#fff;border-radius:5px;cursor:pointer;font-family:var(--font-display);font-size:.95rem;font-weight:600;letter-spacing:.01em;transition:all .15s;white-space:nowrap}.copy-all-btn.svelte-1uha8ag:hover{background:var(--accent-hover)}@media(max-width:1024px){main.svelte-1uha8ag{display:flex;flex-direction:column;gap:1rem}.header.svelte-1uha8ag{margin-bottom:0}.sub-header.svelte-1uha8ag,.layout.svelte-1uha8ag{display:contents}.tool-nav.svelte-1uha8ag{order:1}.tools-column.svelte-1uha8ag{order:2}.sub-header-right.svelte-1uha8ag{order:3}.output-column.svelte-1uha8ag{order:4;position:static;max-height:none}.header-name-row.hidden-placeholder.svelte-1uha8ag{display:none}}@media(max-width:480px){main.svelte-1uha8ag{padding:.75rem}h1.svelte-1uha8ag{font-size:1.35rem}.brand-logo.svelte-1uha8ag{max-width:85%}.tool-nav.svelte-1uha8ag{grid-template-columns:1fr 1fr;gap:.2rem;padding:.25rem}.tool-nav.svelte-1uha8ag button:where(.svelte-1uha8ag){font-size:1rem;padding:.5rem .4rem}.section-body.svelte-1uha8ag{padding:1rem .9rem}.section-header.svelte-1uha8ag{padding:.7rem .85rem;font-size:.85rem}.header-actions.svelte-1uha8ag{gap:.3rem}.icon-btn.svelte-1uha8ag{width:32px;height:32px;font-size:.9rem}.copy-controls.svelte-1uha8ag{flex-direction:column}.copy-controls.svelte-1uha8ag select:where(.svelte-1uha8ag){width:100%}.import-textarea.svelte-1uha8ag{font-size:.72rem}.io-toggle.svelte-1uha8ag button:where(.svelte-1uha8ag){font-size:.78rem;padding:.45rem .5rem}}
