:root{--vscode-bg:#f8fafc;--vscode-panel:#fff;--vscode-panel-strong:#f1f5f9;--vscode-panel-deep:#e8edf4;--vscode-titlebar-bg:#eef8f4;--vscode-border:#e2e8f0;--vscode-accent:#10b981;--vscode-accent-deep:#059669;--vscode-text:#0f172a;--vscode-muted:#64748b;--accent-hover:#10b98112;--accent-hover-strong:#10b9811f;--accent-border:#10b98140;--accent-glow:#10b98159;--info-glow:#06b6d459;--shadow-container:#0000000f;--surface-a:#fff;--surface-b:#f8fafc;--surface-c:#00000008;--surface-d:#e2e8f0;--surface-e:#fff;--surface-f:#f1f5f9;--surface-0:#fff;--surface-50:#f8fafc;--surface-100:#f1f5f9;--surface-200:#e2e8f0;--surface-300:#cbd5e1;--surface-400:#94a3b8;--surface-500:#64748b;--surface-600:#475569;--surface-700:#334155;--surface-800:#1e293b;--surface-900:#0f172a;--surface-ground:#f8fafc;--surface-section:#f8fafc;--surface-card:#fff;--surface-overlay:#fff;--surface-border:#e2e8f0;--surface-hover:#10b98112;--text-color:#0f172a;--text-color-secondary:#64748b;--focus-ring:0 0 0 1px #10b98166;--highlight-bg:#10b9811f;--highlight-text-color:#065f46;--maskbg:#0000004d;--vscode-info:#06b6d4;--vscode-warning:#f59e0b;--vscode-danger:#ef4444;--vscode-success:#10b981;--primary-color:#10b981;--primary-color-text:#fff;--border-radius:8px;--content-padding:.75rem 1rem;--inline-spacing:.5rem}@media (prefers-color-scheme:dark){:root{--vscode-bg:#061812;--vscode-panel:#0c2b20;--vscode-panel-strong:#123629;--vscode-panel-deep:#030e08;--vscode-titlebar-bg:#092318;--vscode-border:#1c4d38;--vscode-accent:#34d399;--vscode-accent-deep:#10b981;--vscode-text:#ecfdf5;--vscode-muted:#5ab88d;--accent-hover:#34d3991f;--accent-hover-strong:#34d39933;--accent-border:#34d3994d;--accent-glow:#34d39940;--info-glow:#06b6d459;--shadow-container:#00000073;--surface-a:#0c2b20;--surface-b:#061812;--surface-c:#ffffff0a;--surface-d:#1c4d38;--surface-e:#0c2b20;--surface-f:#123629;--surface-0:#020b06;--surface-50:#030e08;--surface-100:#061812;--surface-200:#0c2b20;--surface-300:#123629;--surface-400:#1c4d38;--surface-500:#286a4e;--surface-600:#3a8c68;--surface-700:#5ab88d;--surface-800:#86d4ae;--surface-900:#b8ecd2;--surface-ground:#061812;--surface-section:#061812;--surface-card:#0c2b20;--surface-overlay:#0c2b20;--surface-border:#1c4d38;--surface-hover:#34d3991f;--text-color:#ecfdf5;--text-color-secondary:#5ab88d;--focus-ring:0 0 0 1px #34d39980;--highlight-bg:#34d3992e;--highlight-text-color:#fff;--maskbg:#0009;--primary-color:#34d399}}html[data-theme=dark]{--vscode-bg:#061812;--vscode-panel:#0c2b20;--vscode-panel-strong:#123629;--vscode-panel-deep:#030e08;--vscode-titlebar-bg:#092318;--vscode-border:#1c4d38;--vscode-accent:#34d399;--vscode-accent-deep:#10b981;--vscode-text:#ecfdf5;--vscode-muted:#5ab88d;--accent-hover:#34d3991f;--accent-hover-strong:#34d39933;--accent-border:#34d3994d;--accent-glow:#34d39940;--info-glow:#06b6d459;--shadow-container:#00000073;--surface-a:#0c2b20;--surface-b:#061812;--surface-c:#ffffff0a;--surface-d:#1c4d38;--surface-e:#0c2b20;--surface-f:#123629;--surface-0:#020b06;--surface-50:#030e08;--surface-100:#061812;--surface-200:#0c2b20;--surface-300:#123629;--surface-400:#1c4d38;--surface-500:#286a4e;--surface-600:#3a8c68;--surface-700:#5ab88d;--surface-800:#86d4ae;--surface-900:#b8ecd2;--surface-ground:#061812;--surface-section:#061812;--surface-card:#0c2b20;--surface-overlay:#0c2b20;--surface-border:#1c4d38;--surface-hover:#34d3991f;--text-color:#ecfdf5;--text-color-secondary:#5ab88d;--focus-ring:0 0 0 1px #34d39980;--highlight-bg:#34d3992e;--highlight-text-color:#fff;--maskbg:#0009;--primary-color:#34d399}html[data-theme=light]{--vscode-bg:#f8fafc;--vscode-panel:#fff;--vscode-panel-strong:#f1f5f9;--vscode-panel-deep:#e8edf4;--vscode-titlebar-bg:#eef8f4;--vscode-border:#e2e8f0;--vscode-accent:#10b981;--vscode-accent-deep:#059669;--vscode-text:#0f172a;--vscode-muted:#64748b;--accent-hover:#10b98112;--accent-hover-strong:#10b9811f;--accent-border:#10b98140;--accent-glow:#10b98159;--info-glow:#06b6d459;--shadow-container:#0000000f;--surface-a:#fff;--surface-b:#f8fafc;--surface-c:#00000008;--surface-d:#e2e8f0;--surface-e:#fff;--surface-f:#f1f5f9;--surface-0:#fff;--surface-50:#f8fafc;--surface-100:#f1f5f9;--surface-200:#e2e8f0;--surface-300:#cbd5e1;--surface-400:#94a3b8;--surface-500:#64748b;--surface-600:#475569;--surface-700:#334155;--surface-800:#1e293b;--surface-900:#0f172a;--surface-ground:#f8fafc;--surface-section:#f8fafc;--surface-card:#fff;--surface-overlay:#fff;--surface-border:#e2e8f0;--surface-hover:#10b98112;--text-color:#0f172a;--text-color-secondary:#64748b;--focus-ring:0 0 0 1px #10b98166;--highlight-bg:#10b9811f;--highlight-text-color:#065f46;--maskbg:#0000004d;--primary-color:#10b981}.p-dialog .p-dialog-header{background:var(--vscode-titlebar-bg);color:var(--text-color);border-bottom:1px solid var(--surface-border)}.p-dialog .p-dialog-content{background:var(--surface-overlay);color:var(--text-color)}.p-dialog .p-dialog-header-icon{color:var(--text-color-secondary)}.p-dialog .p-dialog-header-icon:hover{color:var(--text-color)}.p-card{box-shadow:none;color:inherit}.p-card .p-card-body{background:0 0;padding:0}.p-card .p-card-content{background:0 0;flex-direction:column;padding:0;display:flex}.p-selectbutton{background:0 0;border:none;gap:6px;padding:0;display:inline-flex}.p-selectbutton.p-component{background:0 0}.p-selectbutton .p-button{border:1px solid var(--vscode-border);color:var(--vscode-muted);box-shadow:none;background:0 0;padding:8px 16px;font-family:inherit;font-size:13px;transition:border-color .12s,background-color .12s,color .12s,box-shadow .12s;border-radius:8px!important}.p-selectbutton .p-button:first-child,.p-selectbutton .p-button:last-child,.p-selectbutton .p-button:not(:first-child):not(:last-child){border:1px solid var(--vscode-border);margin:0;border-radius:8px!important}.p-selectbutton .p-button:hover:not(.p-highlight):not(:disabled){background:var(--accent-hover);border-color:var(--vscode-accent);color:var(--vscode-text)}.p-selectbutton .p-button:focus{box-shadow:var(--focus-ring);outline:none}.p-selectbutton .p-button.p-highlight{background:var(--accent-hover-strong);border-color:var(--vscode-accent);color:var(--vscode-text);box-shadow:0 2px 8px var(--accent-glow)}.p-selectbutton .p-button .p-button-label{font-weight:500}.p-autocomplete-panel{background:var(--surface-overlay);border:1px solid var(--surface-border);border-radius:var(--border-radius);box-shadow:0 10px 24px var(--shadow-container);z-index:10}.p-autocomplete-panel .p-autocomplete-items-wrapper{max-height:240px;overflow-y:auto}.p-autocomplete-panel .p-autocomplete-items{margin:0;padding:4px 0;list-style:none}.p-autocomplete-panel .p-autocomplete-item{cursor:pointer;color:var(--text-color);padding:8px 10px}.p-autocomplete-panel .p-autocomplete-item:hover,.p-autocomplete-panel .p-autocomplete-item.p-focus{background:var(--surface-hover)}.p-autocomplete-panel .p-autocomplete-item[aria-selected=true]{background:var(--highlight-bg);border-left:2px solid var(--primary-color)}@media (prefers-color-scheme:dark){[data-pc-name=editor] .ql-toolbar.ql-snow{border-color:var(--surface-border);background:#ffffff05;border-radius:8px 8px 0 0}[data-pc-name=editor] .ql-toolbar.ql-snow button{background:0 0;border:none;border-radius:4px;width:28px;height:24px;padding:3px 5px}[data-pc-name=editor] .ql-toolbar.ql-snow button:hover,[data-pc-name=editor] .ql-toolbar.ql-snow button.ql-active{background:var(--surface-hover)}[data-pc-name=editor] .ql-toolbar.ql-snow .ql-stroke{stroke:var(--text-color)}[data-pc-name=editor] .ql-toolbar.ql-snow .ql-fill{fill:var(--text-color)}[data-pc-name=editor] .ql-toolbar.ql-snow button:hover .ql-stroke,[data-pc-name=editor] .ql-toolbar.ql-snow button.ql-active .ql-stroke,[data-pc-name=editor] .ql-toolbar.ql-snow .ql-picker-label:hover .ql-stroke,[data-pc-name=editor] .ql-toolbar.ql-snow .ql-picker-label.ql-active .ql-stroke{stroke:#fff}[data-pc-name=editor] .ql-toolbar.ql-snow button:hover .ql-fill,[data-pc-name=editor] .ql-toolbar.ql-snow button.ql-active .ql-fill,[data-pc-name=editor] .ql-toolbar.ql-snow .ql-picker-label:hover .ql-fill,[data-pc-name=editor] .ql-toolbar.ql-snow .ql-picker-label.ql-active .ql-fill{fill:#fff}[data-pc-name=editor] .ql-toolbar.ql-snow .ql-picker{color:var(--text-color)}[data-pc-name=editor] .ql-toolbar.ql-snow .ql-picker .ql-picker-label{color:var(--text-color);border-color:var(--surface-border)}[data-pc-name=editor] .ql-toolbar.ql-snow .ql-picker .ql-picker-label:hover{color:#fff}[data-pc-name=editor] .ql-toolbar.ql-snow .ql-picker .ql-picker-options{background:var(--surface-a);border-color:var(--surface-border);border-radius:6px;box-shadow:0 4px 12px #00000080}[data-pc-name=editor] .ql-toolbar.ql-snow .ql-picker .ql-picker-options .ql-picker-item{color:var(--text-color)}[data-pc-name=editor] .ql-toolbar.ql-snow .ql-picker .ql-picker-options .ql-picker-item:hover,[data-pc-name=editor] .ql-toolbar.ql-snow .ql-picker .ql-picker-options .ql-picker-item.ql-selected{color:#fff;background:var(--surface-hover);border-radius:4px}[data-pc-name=editor] .ql-container.ql-snow{border-color:var(--surface-border);background:#ffffff0a;border-top:none;border-radius:0 0 8px 8px}[data-pc-name=editor] .ql-container.ql-snow .ql-editor{color:var(--text-color);font-family:inherit;font-size:14px;line-height:1.6}[data-pc-name=editor] .ql-container.ql-snow .ql-editor.ql-blank:before{color:var(--text-color-secondary);font-style:normal}}@media (prefers-color-scheme:light){[data-pc-name=editor] .ql-toolbar.ql-snow{border-color:var(--surface-border);border-radius:8px 8px 0 0}[data-pc-name=editor] .ql-container.ql-snow{border-color:var(--surface-border);border-radius:0 0 8px 8px}}html[data-theme=dark] [data-pc-name=editor] .ql-toolbar.ql-snow{border-color:var(--surface-border);background:#ffffff05;border-radius:8px 8px 0 0}html[data-theme=dark] [data-pc-name=editor] .ql-toolbar.ql-snow button{background:0 0;border:none;border-radius:4px;width:28px;height:24px;padding:3px 5px}html[data-theme=dark] [data-pc-name=editor] .ql-toolbar.ql-snow button:hover,html[data-theme=dark] [data-pc-name=editor] .ql-toolbar.ql-snow button.ql-active{background:var(--surface-hover)}html[data-theme=dark] [data-pc-name=editor] .ql-toolbar.ql-snow .ql-stroke{stroke:var(--text-color)}html[data-theme=dark] [data-pc-name=editor] .ql-toolbar.ql-snow .ql-fill{fill:var(--text-color)}html[data-theme=dark] [data-pc-name=editor] .ql-toolbar.ql-snow button:hover .ql-stroke,html[data-theme=dark] [data-pc-name=editor] .ql-toolbar.ql-snow button.ql-active .ql-stroke,html[data-theme=dark] [data-pc-name=editor] .ql-toolbar.ql-snow .ql-picker-label:hover .ql-stroke,html[data-theme=dark] [data-pc-name=editor] .ql-toolbar.ql-snow .ql-picker-label.ql-active .ql-stroke{stroke:#fff}html[data-theme=dark] [data-pc-name=editor] .ql-toolbar.ql-snow button:hover .ql-fill,html[data-theme=dark] [data-pc-name=editor] .ql-toolbar.ql-snow button.ql-active .ql-fill,html[data-theme=dark] [data-pc-name=editor] .ql-toolbar.ql-snow .ql-picker-label:hover .ql-fill,html[data-theme=dark] [data-pc-name=editor] .ql-toolbar.ql-snow .ql-picker-label.ql-active .ql-fill{fill:#fff}html[data-theme=dark] [data-pc-name=editor] .ql-toolbar.ql-snow .ql-picker{color:var(--text-color)}html[data-theme=dark] [data-pc-name=editor] .ql-toolbar.ql-snow .ql-picker .ql-picker-label{color:var(--text-color);border-color:var(--surface-border)}html[data-theme=dark] [data-pc-name=editor] .ql-toolbar.ql-snow .ql-picker .ql-picker-label:hover{color:#fff}html[data-theme=dark] [data-pc-name=editor] .ql-toolbar.ql-snow .ql-picker .ql-picker-options{background:var(--surface-a);border-color:var(--surface-border);border-radius:6px;box-shadow:0 4px 12px #00000080}html[data-theme=dark] [data-pc-name=editor] .ql-toolbar.ql-snow .ql-picker .ql-picker-options .ql-picker-item{color:var(--text-color)}html[data-theme=dark] [data-pc-name=editor] .ql-toolbar.ql-snow .ql-picker .ql-picker-options .ql-picker-item:hover,html[data-theme=dark] [data-pc-name=editor] .ql-toolbar.ql-snow .ql-picker .ql-picker-options .ql-picker-item.ql-selected{color:#fff;background:var(--surface-hover);border-radius:4px}html[data-theme=dark] [data-pc-name=editor] .ql-container.ql-snow{border-color:var(--surface-border);background:#ffffff0a;border-top:none;border-radius:0 0 8px 8px}html[data-theme=dark] [data-pc-name=editor] .ql-container.ql-snow .ql-editor{color:var(--text-color);font-family:inherit;font-size:14px;line-height:1.6}html[data-theme=dark] [data-pc-name=editor] .ql-container.ql-snow .ql-editor.ql-blank:before{color:var(--text-color-secondary);font-style:normal}html[data-theme=light] [data-pc-name=editor] .ql-toolbar.ql-snow{border-color:var(--surface-border);border-radius:8px 8px 0 0}html[data-theme=light] [data-pc-name=editor] .ql-container.ql-snow{border-color:var(--surface-border);border-radius:0 0 8px 8px}.p-password .p-password-input,.p-password .p-icon-field-right{width:100%}.p-password .p-password-show-icon,.p-password .p-password-hide-icon{color:var(--text-color-secondary)}.ingredient-unit-select.p-dropdown .p-dropdown-label{background:inherit}.p-inputtext,.p-inputnumber-input,.p-dropdown,.p-password .p-inputtext{background:var(--surface-a);color:var(--text-color)}.filter-select.p-dropdown{padding:0}.filter-select.p-dropdown .p-dropdown-label{padding:8px 12px;font-size:13px}.recipe-editor{border-radius:8px;overflow:hidden}.p-datepicker{background:var(--surface-a);border:1px solid var(--surface-border);color:var(--text-color)}.p-datepicker .p-datepicker-header{border-bottom:1px solid var(--surface-border);color:var(--text-color);background:0 0}.p-datepicker .p-datepicker-title .p-datepicker-month,.p-datepicker .p-datepicker-title .p-datepicker-year{color:var(--text-color)}.p-datepicker .p-datepicker-title .p-datepicker-month:enabled:hover,.p-datepicker .p-datepicker-title .p-datepicker-year:enabled:hover{color:var(--vscode-accent)}.p-datepicker .p-datepicker-prev,.p-datepicker .p-datepicker-next{color:var(--text-color-secondary)}.p-datepicker .p-datepicker-prev:enabled:hover,.p-datepicker .p-datepicker-next:enabled:hover{color:var(--vscode-accent);background:var(--surface-hover)}.p-datepicker .p-datepicker-calendar th>span{color:var(--text-color-secondary)}.p-datepicker .p-datepicker-calendar td>span{color:var(--text-color);border-radius:8px}.p-datepicker .p-datepicker-calendar td>span:not(.p-disabled):not(.p-highlight):hover{background:var(--surface-hover)}.p-datepicker .p-datepicker-calendar td>span.p-highlight{background:var(--vscode-accent);color:#fff}.p-datepicker .p-datepicker-calendar td>span:focus-visible{box-shadow:0 0 0 2px var(--surface-hover)}.p-datepicker .p-datepicker-calendar td.p-datepicker-today>span:not(.p-highlight){border:1px solid var(--vscode-accent);color:var(--text-color);background:0 0}.p-datepicker .p-monthpicker .p-monthpicker-month.p-highlight,.p-datepicker .p-yearpicker .p-yearpicker-year.p-highlight{background:var(--vscode-accent);color:#fff}.p-datepicker .p-datepicker-buttonbar{border-top:1px solid var(--surface-border)}.p-datepicker .p-datepicker-buttonbar .p-button.p-button-text{color:var(--vscode-accent)}.p-datepicker .p-datepicker-buttonbar .p-button.p-button-text:enabled:hover{background:var(--surface-hover)}.toolbar{z-index:100;background:var(--vscode-panel);border-bottom:1px solid var(--vscode-border);align-items:center;gap:0;height:60px;padding:0 40px;display:flex;position:sticky;top:0}.toolbar-brand{flex-shrink:0;align-items:center;gap:10px;margin-right:28px;display:inline-flex}.toolbar-logo{border-radius:8px;width:auto;height:34px;display:block}.toolbar-title{color:var(--vscode-text);flex-direction:column;gap:1px;display:flex}.toolbar-name{letter-spacing:-.2px;font-size:17px;font-weight:700;line-height:1.1}.toolbar-tagline{letter-spacing:.1px;color:var(--vscode-muted);font-size:11px}.menu--desktop{flex:1;align-items:center;gap:0;height:100%;display:flex}.menu__left{align-items:stretch;height:100%;display:flex}.menu__right{align-items:center;gap:0;height:100%;margin-left:auto;display:flex}.menu-option{align-items:stretch;display:flex;position:relative}.menu-option__trigger{color:var(--vscode-muted);cursor:pointer;letter-spacing:.1px;background:0 0;border:none;border-radius:0;align-items:center;gap:5px;padding:0 14px;font-size:14px;font-weight:500;text-decoration:none;transition:color .12s,background-color .12s;display:flex;position:relative}.menu-option__trigger:after{content:"";background:var(--vscode-accent);border-radius:2px 2px 0 0;height:2px;transition:transform .14s;position:absolute;bottom:0;left:10px;right:10px;transform:scaleX(0)}.menu-option__trigger:hover,.menu-option__trigger:focus-visible{color:var(--vscode-text);background:var(--accent-hover);outline:none}.menu-option__trigger:hover:after,.menu-option__trigger:focus-visible:after{transform:scaleX(1)}.menu-option__caret{opacity:.65;font-size:10px}.submenu{border:1px solid var(--vscode-border);background:var(--vscode-panel);min-width:210px;box-shadow:0 12px 28px var(--shadow-container);z-index:101;border-top:none;border-radius:0 0 12px 12px;flex-direction:column;gap:2px;padding:6px;display:none;position:absolute;top:100%;left:0}.menu-option:hover .submenu,.menu-option:focus-within .submenu{display:flex}.submenu-option{color:var(--vscode-muted);text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;padding:9px 12px;font-size:13px;text-decoration:none;transition:background-color .12s,color .12s,border-color .12s}.submenu-option:hover,.submenu-option:focus-visible{background:var(--accent-hover);border-color:var(--accent-border);color:var(--vscode-text);outline:none}.theme-toggle{border:1px solid var(--vscode-border);width:34px;height:34px;color:var(--vscode-muted);cursor:pointer;background:0 0;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;margin-left:4px;transition:border-color .14s,color .14s,background-color .14s;display:inline-flex}.theme-toggle:hover{border-color:var(--vscode-accent);color:var(--vscode-text);background:var(--accent-hover)}.toolbar-mobile-controls{align-items:center;gap:8px;margin-left:auto;display:none}.hamburger{border:1px solid var(--vscode-border);cursor:pointer;width:36px;height:36px;color:var(--vscode-muted);background:0 0;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;padding:6px;font-size:18px;display:flex}.hamburger:hover{border-color:var(--vscode-accent);background:var(--accent-hover);color:var(--vscode-text)}.drawer-backdrop{z-index:200;background:#00000073;animation:.18s fade-in;position:fixed;inset:0}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.drawer{z-index:201;background:var(--vscode-panel);border-left:1px solid var(--vscode-border);width:min(320px,85vw);box-shadow:-8px 0 32px var(--shadow-container);flex-direction:column;transition:transform .22s;display:flex;position:fixed;top:0;bottom:0;right:0;transform:translate(100%)}.drawer.drawer--open{transform:translate(0)}.drawer__header{border-bottom:1px solid var(--vscode-border);flex-shrink:0;justify-content:space-between;align-items:center;height:60px;padding:0 16px;display:flex}.drawer__title{color:var(--vscode-text);font-size:15px;font-weight:600}.drawer__close{border:1px solid var(--vscode-border);width:32px;height:32px;color:var(--vscode-muted);cursor:pointer;background:0 0;border-radius:8px;justify-content:center;align-items:center;font-size:14px;transition:border-color .12s,color .12s,background-color .12s;display:flex}.drawer__close:hover{border-color:var(--vscode-accent);color:var(--vscode-text);background:var(--accent-hover)}.drawer__body{flex-direction:column;flex:1;gap:2px;padding:8px;display:flex;overflow-y:auto}.drawer-section{flex-direction:column;display:flex}.drawer-section__heading{letter-spacing:.6px;text-transform:uppercase;color:var(--vscode-muted);padding:12px 12px 4px;font-size:11px;font-weight:600}.drawer-section__link{color:var(--vscode-text);border:1px solid #0000;border-radius:8px;padding:10px 12px;font-size:14px;text-decoration:none;transition:background-color .12s,border-color .12s}.drawer-section__link:hover{background:var(--accent-hover);border-color:var(--accent-border)}.drawer-section__link--child{color:var(--vscode-muted);padding-left:24px;font-size:13px}.drawer-section__link--child:hover{color:var(--vscode-text)}@media (max-width:720px){.toolbar{height:60px;padding:0 16px}.toolbar-brand{margin-right:0}.menu--desktop{display:none}.toolbar-mobile-controls{display:flex}.theme-toggle{margin-left:0}}.toolbar-avatar{background:var(--vscode-accent);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;display:inline-flex;overflow:hidden}.toolbar-avatar__img{object-fit:cover;border-radius:50%;width:100%;height:100%}.toolbar-avatar__initial{font-size:13px;font-weight:600;line-height:1}.autocomplete{width:100%;position:relative}.autocomplete .p-autocomplete,.autocomplete .p-autocomplete-input{width:100%}.autocomplete-clear{color:var(--vscode-muted,#9da5b4);cursor:pointer;z-index:1;background:0 0;border:none;padding:2px 4px;font-size:16px;line-height:1;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.autocomplete-clear:hover{color:var(--vscode-text,#d4d4d4)}.autocomplete-item-content{justify-content:space-between;align-items:center;display:flex}.suggestion-name{flex:1;min-width:0}.suggestion-meta{color:var(--vscode-muted,#9da5b4);margin-left:8px;font-size:12px}.login{color:var(--vscode-text);box-sizing:border-box;width:100%}.login .account-content{background:linear-gradient(180deg, var(--vscode-panel), var(--vscode-panel-strong));padding:22px 22px 18px}.login .account-header{border-bottom:1px solid var(--vscode-border);justify-content:space-between;align-items:center;gap:12px;padding-bottom:12px;display:flex}.login .account-label{color:var(--vscode-muted);letter-spacing:.4px;text-transform:uppercase;margin:0;font-size:12px}.login .account-name{color:var(--vscode-text);margin:4px 0 0;font-size:24px}.login .account-helper{color:var(--vscode-muted);max-width:640px;margin:8px 0 0;font-size:14px;line-height:1.5}.login .account-panel{border:1px solid var(--vscode-border);background:var(--vscode-panel-deep);border-radius:12px;margin-top:18px}.login .panel-toolbar{border-bottom:1px solid var(--vscode-border);background:var(--vscode-panel-strong);justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.login .toolbar-tabs{align-items:center;gap:6px;display:flex}.login .tab{cursor:pointer;color:var(--vscode-muted);background:0 0;border:1px solid #0000;border-radius:8px;padding:8px 12px;font-size:13px}.login .tab.is-active{border-color:var(--vscode-accent);background:var(--vscode-panel);color:var(--vscode-text);box-shadow:0 2px 8px var(--accent-glow)}.login .panel-content{flex-direction:column;gap:12px;padding:14px;display:flex;overflow:visible}.login .account-form{flex-direction:column;gap:12px;display:flex}.login .form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.login .form-field{border:1px solid var(--vscode-border);background:var(--vscode-panel);border-radius:10px;flex-direction:column;gap:8px;padding:12px;display:flex}.login .form-field-full{grid-column:1/-1}.login .field-label{color:var(--vscode-muted);letter-spacing:.4px;text-transform:uppercase;margin:0;font-size:12px}.login .field-hint{color:var(--vscode-muted);margin:0;font-size:12px;line-height:1.5}.login .field-error{font-size:12px;line-height:1.5}.login .password-input{border:1px solid var(--vscode-border);background:var(--vscode-panel);color:var(--vscode-text);border-radius:8px;font-size:14px;transition:border-color .12s,box-shadow .12s,background-color .12s}.login .text-input{border:1px solid var(--vscode-border);background:var(--vscode-panel);color:var(--vscode-text);border-radius:8px;padding:10px 12px;font-size:14px;transition:border-color .12s,box-shadow .12s,background-color .12s}.login .text-input::placeholder{color:var(--vscode-muted)}.login .text-input:focus{border-color:var(--vscode-accent);background:var(--accent-hover);box-shadow:var(--focus-ring);outline:none}.login .form-footer{border:1px solid var(--vscode-border);background:var(--vscode-panel-strong);color:var(--vscode-text);border-radius:10px;justify-content:flex-end;align-items:center;gap:12px;margin-top:6px;padding:12px;font-size:12px;display:flex}.login .footer-actions{align-items:center;gap:8px;display:inline-flex}.login .primary-button,.login .ghost-button{border:1px solid var(--vscode-border);color:var(--vscode-text);cursor:pointer;background:0 0;border-radius:8px;padding:10px 14px;font-family:inherit;font-size:13px;text-decoration:none;display:inline-block}.login .primary-button{background:var(--vscode-accent);border-color:var(--vscode-accent);color:#fff;box-shadow:0 4px 12px var(--accent-glow)}.login .primary-button:disabled{cursor:not-allowed;opacity:.5}.login .ghost-button:hover{border-color:var(--vscode-accent);background:var(--accent-hover)}.login .success-message{text-align:center;padding:40px 20px}.login .success-message h2{color:var(--vscode-text);margin-bottom:12px}.login .success-message p{color:var(--vscode-muted);margin-bottom:24px}.login .oauth-buttons{flex-direction:column;gap:10px;display:flex}.login .oauth-button{cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;gap:10px;width:100%;padding:11px 16px;font-family:inherit;font-size:14px;font-weight:500;transition:filter .12s,box-shadow .12s;display:flex}.login .oauth-button svg{flex-shrink:0}.login .oauth-button--google{color:#fff;background:#4285f4}.login .oauth-button--google:hover{filter:brightness(1.08);box-shadow:0 2px 12px #4285f473}.login .oauth-button--google:active{filter:brightness(.95)}.login .oauth-button--apple{color:#fff;background:#000;border:1px solid #3a3a3a}.login .oauth-button--apple:hover{filter:brightness(1.15);box-shadow:0 2px 12px #00000080}.login .oauth-button--apple:active{filter:brightness(.9)}.login .oauth-divider{color:var(--vscode-muted);text-transform:uppercase;letter-spacing:.5px;align-items:center;gap:12px;font-size:12px;display:flex}.login .oauth-divider:before,.login .oauth-divider:after{content:"";background:var(--vscode-border);flex:1;height:1px}.login .password-requirements{flex-direction:column;gap:4px;margin-top:4px;display:flex}.login .requirement{color:var(--vscode-muted);opacity:.6;font-size:11px}.login .requirement.valid{color:var(--vscode-success);opacity:1}.login .form-error{color:var(--vscode-error,#f87171);background:var(--error-bg,#f871711a);border:1px solid var(--vscode-error,#f87171);border-radius:8px;padding:8px 12px;font-size:13px}.login .form-links{text-align:center;color:var(--vscode-muted);margin-top:12px;font-size:13px}.login .form-links a{color:var(--vscode-accent);text-decoration:none}.login .form-links a:hover{text-decoration:underline}@media (max-width:720px){.login .form-grid{grid-template-columns:1fr}.login .account-header{flex-direction:column;align-items:flex-start}.login .form-footer{flex-direction:column;align-items:stretch}.login .footer-actions{justify-content:center}}.create-account{color:var(--vscode-text);box-sizing:border-box;width:100%}.create-account .account-content{background:linear-gradient(180deg, var(--vscode-panel), var(--vscode-panel-strong));padding:22px 22px 18px}.create-account .account-header{border-bottom:1px solid var(--vscode-border);justify-content:space-between;align-items:center;gap:12px;padding-bottom:12px;display:flex}.create-account .account-label{color:var(--vscode-muted);letter-spacing:.4px;text-transform:uppercase;margin:0;font-size:12px}.create-account .account-name{color:var(--vscode-text);margin:4px 0 0;font-size:24px}.create-account .account-helper{color:var(--vscode-muted);max-width:640px;margin:8px 0 0;font-size:14px;line-height:1.5}.create-account .account-panel{border:1px solid var(--vscode-border);background:var(--vscode-panel-deep);border-radius:12px;margin-top:18px}.create-account .panel-toolbar{border-bottom:1px solid var(--vscode-border);background:var(--vscode-panel-strong);justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.create-account .toolbar-tabs{align-items:center;gap:6px;display:flex}.create-account .tab{cursor:pointer;color:var(--vscode-muted);background:0 0;border:1px solid #0000;border-radius:8px;padding:8px 12px;font-size:13px}.create-account .tab.is-active{border-color:var(--vscode-accent);background:var(--vscode-panel);color:var(--vscode-text);box-shadow:0 2px 8px var(--accent-glow)}.create-account .panel-content{flex-direction:column;gap:12px;padding:14px;display:flex;overflow:visible}.create-account .account-form{flex-direction:column;gap:12px;display:flex}.create-account .form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.create-account .form-field{border:1px solid var(--vscode-border);background:var(--vscode-panel);border-radius:10px;flex-direction:column;gap:8px;padding:12px;display:flex}.create-account .form-field-full{grid-column:1/-1}.create-account .field-label{color:var(--vscode-muted);letter-spacing:.4px;text-transform:uppercase;margin:0;font-size:12px}.create-account .field-hint{color:var(--vscode-muted);margin:0;font-size:12px;line-height:1.5}.create-account .field-error{color:var(--vscode-danger);margin:0;font-size:12px;line-height:1.5}.create-account .has-error,.create-account .input-error{border-color:var(--vscode-danger)}.create-account .input-error:focus{border-color:var(--vscode-danger);box-shadow:0 0 0 1px #ef444459}.create-account .password-input{border:1px solid var(--vscode-border);background:var(--vscode-panel);color:var(--vscode-text);border-radius:8px;font-size:14px;transition:border-color .12s,box-shadow .12s,background-color .12s}.create-account .text-input{border:1px solid var(--vscode-border);background:var(--vscode-panel);color:var(--vscode-text);border-radius:8px;padding:10px 12px;font-size:14px;transition:border-color .12s,box-shadow .12s,background-color .12s}.create-account .text-input::placeholder{color:var(--vscode-muted)}.create-account .text-input:focus{border-color:var(--vscode-accent);background:var(--accent-hover);box-shadow:var(--focus-ring);outline:none}.create-account .password-requirements{flex-direction:column;gap:4px;margin-top:4px;display:flex}.create-account .requirement{color:var(--vscode-muted);opacity:.6;font-size:11px}.create-account .requirement.valid{color:var(--vscode-success);opacity:1}.create-account .checkbox-group,.create-account .radio-group{flex-flow:column;gap:8px;display:flex}@media screen and (min-width:770px){.create-account .checkbox-group,.create-account .radio-group{flex-flow:wrap;align-items:center}}.create-account .checkbox-option,.create-account .radio-option{border:1px solid var(--vscode-border);color:var(--vscode-muted);cursor:pointer;background:0 0;border-radius:8px;align-items:center;gap:8px;padding:10px 12px;transition:border-color .12s,box-shadow .12s,background-color .12s,color .12s;display:inline-flex;position:relative}.create-account .checkbox-option:hover,.create-account .radio-option:hover{border-color:var(--vscode-accent);color:var(--vscode-text);background:var(--accent-hover)}.create-account .checkbox-option.is-active,.create-account .radio-option.is-active{border-color:var(--vscode-accent);color:var(--vscode-text);background:var(--accent-hover-strong);box-shadow:0 6px 18px var(--accent-glow)}.create-account .checkbox-option.is-active .checkbox-indicator,.create-account .radio-option.is-active .checkbox-indicator,.create-account .checkbox-option.is-active .radio-dot,.create-account .radio-option.is-active .radio-dot{border-color:var(--vscode-accent);background:var(--vscode-accent)}.create-account .radio-input{opacity:0;pointer-events:none;position:absolute}.create-account .checkbox-indicator{border:2px solid var(--vscode-muted);border-radius:3px;width:8px;height:8px;transition:border-color .12s,background-color .12s}.create-account .radio-dot{border:2px solid var(--vscode-muted);border-radius:50%;width:8px;height:8px;transition:border-color .12s,background-color .12s}.create-account .form-footer{border:1px solid var(--vscode-border);background:var(--vscode-panel-strong);color:var(--vscode-text);border-radius:10px;flex-direction:column;gap:8px;margin-top:6px;padding:12px;font-size:12px;display:flex}.create-account .footer-actions{justify-content:flex-end;align-items:center;gap:8px;display:inline-flex}.create-account .primary-button,.create-account .ghost-button{border:1px solid var(--vscode-border);color:var(--vscode-text);cursor:pointer;background:0 0;border-radius:8px;padding:10px 14px;font-family:inherit;font-size:13px;text-decoration:none;display:inline-block}.create-account .primary-button{background:var(--vscode-accent);border-color:var(--vscode-accent);color:#fff;box-shadow:0 4px 12px var(--accent-glow)}.create-account .primary-button:disabled{cursor:not-allowed;opacity:.5}.create-account .ghost-button:hover{border-color:var(--vscode-accent);background:var(--accent-hover)}.create-account .success-message{text-align:center;padding:40px 20px}.create-account .success-message h2{color:var(--vscode-text);margin-bottom:12px}.create-account .success-message p{color:var(--vscode-muted);margin-bottom:24px}.create-account .form-links{text-align:center;color:var(--vscode-muted);margin-top:12px;font-size:13px}.create-account .form-links a{color:var(--vscode-accent);text-decoration:none}.create-account .form-links a:hover{text-decoration:underline}@media (max-width:720px){.create-account .form-grid{grid-template-columns:1fr}.create-account .account-header{flex-direction:column;align-items:flex-start}.create-account .form-footer{flex-direction:column;align-items:stretch}.create-account .footer-actions{justify-content:center}}.recipes-list{color:var(--vscode-text);box-sizing:border-box;width:100%}.recipes-list .recipes-content{background:linear-gradient(180deg, var(--vscode-panel), var(--vscode-panel-strong));padding:22px 22px 18px}.recipes-list .recipes-header{border-bottom:1px solid var(--vscode-border);justify-content:space-between;align-items:center;gap:12px;padding-bottom:12px;display:flex}.recipes-list .recipes-label{color:var(--vscode-muted);letter-spacing:.4px;text-transform:uppercase;margin:0;font-size:12px}.recipes-list .recipes-name{color:var(--vscode-text);margin:4px 0 0;font-size:24px}.recipes-list .recipes-meta{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.recipes-list .pill{border:1px solid var(--vscode-border);background:var(--vscode-panel);color:var(--vscode-muted);border-radius:999px;padding:clamp(.3rem,1vw,.5rem) clamp(.3rem,1.5vw,.5rem);font-size:clamp(.3rem,2vw,.75rem)}.recipes-list .pill-primary{color:#fff;border-color:var(--vscode-accent);background:var(--vscode-accent);box-shadow:0 4px 12px var(--accent-glow)}.recipes-list .pill-ghost{background:var(--accent-hover)}.recipes-list .pill-warning{color:#fff;border-color:var(--vscode-warning);background:var(--vscode-warning);box-shadow:0 4px 12px #f59e0b59}.recipes-list .recipes-panel{border:1px solid var(--vscode-border);background:var(--vscode-panel-deep);border-radius:12px;margin-top:18px}.recipes-list .panel-toolbar{border-bottom:1px solid var(--vscode-border);background:var(--vscode-panel-strong);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.recipes-list .toolbar-filters{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.recipes-list .filter-group{align-items:center;gap:8px;display:flex}.recipes-list .filter-label{color:var(--vscode-muted);text-transform:uppercase;letter-spacing:.4px;font-size:12px}.recipes-list .filter-select{border:1px solid var(--vscode-border);background:var(--vscode-panel);color:var(--vscode-text);cursor:pointer;border-radius:8px;font-size:13px;transition:border-color .12s,box-shadow .12s}.recipes-list .filter-select:focus{border-color:var(--vscode-accent);box-shadow:var(--focus-ring);outline:none}.recipes-list .filter-input{border:1px solid var(--vscode-border);background:var(--vscode-panel);color:var(--vscode-text);border-radius:8px;padding:8px 12px;font-size:13px;transition:border-color .12s,box-shadow .12s}.recipes-list .filter-input::placeholder{color:var(--vscode-muted)}.recipes-list .filter-input:focus{border-color:var(--vscode-accent);box-shadow:var(--focus-ring);outline:none}.recipes-list .sort-direction-button{border:1px solid var(--vscode-border);background:var(--vscode-panel);color:var(--vscode-text);cursor:pointer;border-radius:8px;padding:8px 12px;font-size:14px;transition:border-color .12s,background-color .12s}.recipes-list .sort-direction-button:hover{border-color:var(--vscode-accent);background:var(--accent-hover)}.recipes-list .toolbar-actions{align-items:center;gap:8px;display:flex}.recipes-list .ghost-button,.recipes-list .danger-button{border:1px solid var(--vscode-border);cursor:pointer;border-radius:8px;padding:8px 12px;font-family:inherit;font-size:13px;transition:border-color .12s,background-color .12s,color .12s}.recipes-list .ghost-button{color:var(--vscode-text);background:0 0}.recipes-list .ghost-button:hover{border-color:var(--vscode-accent);background:var(--accent-hover)}.recipes-list .danger-button{color:var(--vscode-danger);border-color:var(--vscode-danger);background:#ef44441a}.recipes-list .danger-button:hover{background:var(--vscode-danger);color:#fff}.recipes-list .panel-content{flex-direction:column;gap:12px;padding:14px;display:flex;overflow:auto}.recipes-list .no-recipes-text{border:1px dashed var(--vscode-border);color:var(--vscode-muted);background:var(--accent-hover);text-align:center;border-radius:10px;margin:0;padding:24px}.recipes-list .select-all-row{border-bottom:1px solid var(--vscode-border);padding:8px 12px}.recipes-list .checkbox-label{cursor:pointer;color:var(--vscode-muted);align-items:center;gap:10px;font-size:13px;display:inline-flex}.recipes-list .checkbox-label:hover{color:var(--vscode-text)}.recipes-list .checkbox-text{-webkit-user-select:none;user-select:none}.recipes-list .recipe-checkbox{cursor:pointer}.recipes-list .recipe-checkbox .p-checkbox-box{border-color:var(--vscode-accent);width:16px;height:16px}.recipes-list .recipe-checkbox.p-checkbox-checked .p-checkbox-box{background:var(--vscode-accent);border-color:var(--vscode-accent)}@media (max-width:720px){.recipes-list .recipes-header{flex-direction:column;align-items:flex-start}.recipes-list .recipes-meta{justify-content:flex-start}.recipes-list .panel-toolbar{flex-direction:column;align-items:flex-start}.recipes-list .toolbar-filters{width:100%}.recipes-list .toolbar-actions{justify-content:flex-start;width:100%}.recipes-list .recipe-cards{grid-template-columns:1fr}}.recipe-view{color:var(--vscode-text);box-sizing:border-box;width:100%}.recipe-editor{border-radius:8px;margin:14px 0 18px;overflow:hidden}.titlebar-actions,.toolbar-actions{color:var(--vscode-muted);align-items:center;gap:8px;display:flex}.titlebar-actions .action,.toolbar-actions .action{border:1px solid var(--vscode-border);background:0 0;border-radius:6px;padding:4px 8px}.edit-actions{flex:1;justify-content:flex-end;max-width:260px;margin-left:auto}.recipe-content{background:linear-gradient(180deg, var(--vscode-panel), var(--vscode-panel-strong));padding:22px 22px 18px}.recipe-header-container{width:600px}@media screen and (max-width:670px){.recipe-header-container{width:100%}}.recipe-header{border-bottom:1px solid var(--vscode-border);justify-content:space-between;align-items:flex-end;gap:12px;padding-bottom:12px;display:flex}.recipe-label{color:var(--vscode-muted);letter-spacing:.4px;text-transform:uppercase;margin:0;font-size:12px}.back-link{color:var(--vscode-accent);align-items:center;gap:6px;margin-bottom:8px;font-size:13px;text-decoration:none;transition:color .12s;display:inline-flex}.back-link:hover{color:var(--vscode-accent-deep);text-decoration:underline}.recipe-name{color:var(--vscode-text);margin:4px 0 0;font-size:24px}.recipe-meta{align-items:center;gap:8px;display:flex}.pill{border:1px solid var(--vscode-border);background:var(--vscode-panel);color:var(--vscode-muted);border-radius:999px;padding:6px 10px;font-size:12px}.pill-primary{color:#fff;border-color:var(--vscode-accent);background:var(--vscode-accent);box-shadow:0 4px 12px var(--accent-glow)}.pill-ghost{background:var(--accent-hover)}.recipe-description{color:var(--vscode-muted);margin:14px 0 18px;font-size:14px;line-height:1.6}.recipe-panel{border:1px solid var(--vscode-border);background:var(--vscode-panel-deep);border-radius:12px}.panel-toolbar{border-bottom:1px solid var(--vscode-border);background:var(--vscode-panel-strong);justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.toolbar-tabs{align-items:center;gap:6px;display:flex}.tab{color:var(--vscode-muted);background:0 0;border:1px solid #0000;border-radius:8px;padding:8px 12px;font-size:13px;transition:border-color .12s,background-color .12s,color .12s}.tab.is-active{border-color:var(--vscode-accent);background:var(--vscode-panel);color:var(--vscode-text);box-shadow:0 2px 8px var(--accent-glow)}.panel-content{padding:14px;overflow:visible}.ingredient-list{flex-direction:column;gap:2px;display:flex}.ingredient-empty{border:1px dashed var(--vscode-border);color:var(--vscode-muted);background:var(--accent-hover);border-radius:10px;margin:0;padding:12px;font-size:14px}.ingredient-row{border-bottom:1px solid var(--vscode-border);justify-content:space-between;align-items:center;gap:12px;padding:10px 4px;transition:background-color .12s;display:flex}.ingredient-row:last-child{border-bottom:none}.ingredient-row-name{color:var(--vscode-text);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:14px;overflow:hidden}.ingredient-row-meta{flex-shrink:0;align-items:center;gap:6px;display:flex}.ingredient-row-qty{color:var(--vscode-muted);font-size:13px}.ingredient-row-sep{color:var(--vscode-border);font-size:13px}.ingredient-row-cal{color:var(--vscode-accent);background:var(--accent-hover);border:1px solid var(--accent-border);border-radius:999px;padding:2px 8px;font-size:12px;font-weight:600}.ingredient-card{border:1px solid var(--vscode-border);background:var(--vscode-panel);border-radius:10px;align-items:flex-end;gap:10px;margin-bottom:8px;padding:12px;display:flex}.ingredient-card-fields{flex:1;grid-template-columns:1.5fr 100px 100px 80px;align-items:flex-end;gap:10px;min-width:0;display:grid}.ingredient-field{flex-direction:column;gap:5px;min-width:0;display:flex}.ingredient-field-label{color:var(--vscode-muted);letter-spacing:.4px;text-transform:uppercase;font-size:11px}.ingredient-qty-input,.ingredient-unit-select{box-sizing:border-box;width:100%;color:var(--vscode-text);background:var(--vscode-panel-strong);border:1px solid var(--vscode-border);border-radius:8px;padding:7px 10px;font-family:inherit;font-size:14px}.ingredient-qty-input:focus,.ingredient-unit-select:focus{border-color:var(--vscode-accent);box-shadow:var(--focus-ring);outline:none}.ingredient-qty-input.p-dropdown,.ingredient-unit-select.p-dropdown{align-items:center;padding:0;display:flex}.ingredient-qty-input.p-dropdown .p-dropdown-label,.ingredient-unit-select.p-dropdown .p-dropdown-label{color:var(--vscode-text);padding:7px 10px;font-family:inherit;font-size:14px}.ingredient-qty-input.p-dropdown .p-dropdown-trigger,.ingredient-unit-select.p-dropdown .p-dropdown-trigger{padding-right:8px}.ingredient-cal-value{color:var(--vscode-accent);background:var(--accent-hover);border:1px solid var(--accent-border);text-align:center;border-radius:8px;padding:7px 10px;font-size:14px;font-weight:600;line-height:1.4;display:block}.ingredient-remove-btn{flex-shrink:0;align-self:flex-end}.recipe-statusbar{background:linear-gradient(90deg, var(--vscode-accent), var(--vscode-accent-deep));color:#fff;border-top:1px solid #ffffff1a;border-radius:0 0 14px 14px;align-items:center;gap:14px;padding:8px 14px;font-size:12px;display:flex}.status-item{align-items:center;gap:6px;display:inline-flex}.status-item.accent{font-weight:600}.recipe-name-input{color:var(--vscode-text);background:var(--vscode-panel);border:1px solid var(--vscode-border);box-sizing:border-box;border-radius:8px;width:100%;margin:4px 0 0;padding:8px 12px;font-family:inherit;font-size:24px}.recipe-name-input:focus{border-color:var(--vscode-accent);box-shadow:var(--focus-ring);outline:none}.recipe-description-input{width:100%;min-height:80px;color:var(--vscode-text);background:var(--vscode-panel);border:1px solid var(--vscode-border);resize:vertical;box-sizing:border-box;border-radius:8px;margin:14px 0 18px;padding:12px;font-family:inherit;font-size:14px;line-height:1.6}.recipe-description-input:focus{border-color:var(--vscode-accent);box-shadow:var(--focus-ring);outline:none}.meal-select{border:1px solid var(--vscode-border);background:var(--vscode-panel);color:var(--vscode-text);cursor:pointer;border-radius:8px;padding:8px 12px;font-size:13px;transition:border-color .12s,box-shadow .12s}.meal-select:focus{border-color:var(--vscode-accent);box-shadow:var(--focus-ring);outline:none}.ghost-button,.primary-button,.danger-button{border:1px solid var(--vscode-border);cursor:pointer;border-radius:8px;padding:8px 12px;font-family:inherit;font-size:13px;transition:border-color .12s,background-color .12s,color .12s}.ghost-button{color:var(--vscode-text);background:0 0}.ghost-button:hover{border-color:var(--vscode-accent);background:var(--accent-hover)}.primary-button{color:#fff;background:var(--vscode-accent);border-color:var(--vscode-accent)}.primary-button:hover{background:var(--vscode-accent-deep);border-color:var(--vscode-accent-deep)}.danger-button{color:var(--vscode-danger);border-color:var(--vscode-danger);background:#ef44441a}.danger-button:hover{background:var(--vscode-danger);color:#fff}.ingredient-actions{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.nutrition-panel{border:1px solid var(--vscode-border);border-radius:8px;margin-top:20px;overflow:hidden}.nutrition-panel-header{background:var(--accent-hover);border-bottom:1px solid var(--vscode-border);justify-content:space-between;align-items:center;gap:12px;padding:10px 16px;display:flex}.nutrition-serves{color:var(--vscode-text);align-items:center;gap:8px;font-size:14px;display:flex}.nutrition-serves-label{color:var(--vscode-muted);letter-spacing:.3px;text-transform:uppercase;font-size:13px;font-weight:600}.nutrition-serves-input{border:1px solid var(--vscode-border);background:var(--vscode-input-bg,var(--vscode-bg));width:64px;color:var(--vscode-text);text-align:center;border-radius:4px;padding:4px 8px;font-size:14px}.nutrition-serves-input:focus{border-color:var(--accent);outline:none}.nutrition-serves-value{font-size:14px;font-weight:600}.nutrition-toggle{border:1px solid var(--vscode-border);border-radius:6px;display:flex;overflow:hidden}.nutrition-toggle-btn{color:var(--vscode-muted);cursor:pointer;background:0 0;border:none;padding:5px 14px;font-size:13px;font-weight:500;transition:background .15s,color .15s}.nutrition-toggle-btn:hover:not(.is-active){background:var(--accent-hover);color:var(--vscode-text)}.nutrition-toggle-btn.is-active{background:var(--accent);color:#fff}.nutrition-list{margin:0;padding:8px 0}.nutrition-row{border-bottom:1px solid var(--vscode-border);justify-content:space-between;align-items:center;padding:8px 16px;display:flex}.nutrition-row:last-child{border-bottom:none}.nutrition-label{color:var(--vscode-text);font-size:14px;font-weight:500}.nutrition-value{color:var(--vscode-text);font-size:14px;font-weight:600}.recipe-steps{margin:20px 0 18px}.steps-heading{color:var(--vscode-text);letter-spacing:.2px;margin:0 0 12px;font-size:16px;font-weight:600}.steps-empty{color:var(--vscode-muted);font-size:14px}.step-block{border:1px solid var(--vscode-border);background:var(--vscode-panel-deep);border-radius:10px;margin-bottom:12px;padding:12px}.step-header{align-items:center;gap:8px;margin-bottom:8px;display:flex}.step-number{background:var(--vscode-accent);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;font-size:12px;font-weight:600;display:flex}.step-title-input{color:var(--vscode-text);background:var(--vscode-panel);border:1px solid var(--vscode-border);border-radius:8px;flex:1;padding:7px 10px;font-family:inherit;font-size:14px}.step-title-input::placeholder{color:var(--vscode-muted)}.step-title-input:focus{border-color:var(--vscode-accent);box-shadow:var(--focus-ring);outline:none}.step-title{color:var(--vscode-text);flex:1;margin:0;font-size:14px;font-weight:600}.step-controls{flex-shrink:0;align-items:center;gap:4px;display:flex}.step-btn{padding:4px 8px;font-size:12px;line-height:1}.step-editor-wrap{flex-direction:column;gap:8px;display:flex}.step-image-upload{align-self:flex-start}.step-image-upload .p-fileupload-choose{color:var(--vscode-text);border:1px solid var(--vscode-border);box-shadow:none;background:0 0;border-radius:8px;padding:8px 12px;font-family:inherit;font-size:13px;transition:border-color .12s,background-color .12s}.step-image-upload .p-fileupload-choose:hover{background:var(--accent-hover);border-color:var(--vscode-accent)}.step-image-upload .p-fileupload-choose .p-button-label{font-weight:400}.step-image-upload .p-fileupload-choose .p-button-icon{display:none}.step-content{color:var(--vscode-text);font-size:14px;line-height:1.65}.step-content p{margin:0 0 8px}.step-content ul,.step-content ol{margin:0 0 8px;padding-left:20px}.step-content img{border-radius:6px;max-width:100%;margin-top:8px}.add-step-button{margin-top:4px}.recipe-meta-fields{margin:14px 0 18px}.meta-row{flex-wrap:wrap;gap:12px;margin-bottom:12px;display:flex}.meta-field{flex-direction:column;flex:1;gap:4px;min-width:120px;display:flex}.meta-label{color:var(--vscode-muted);letter-spacing:.3px;text-transform:uppercase;font-size:12px}.meta-input,.meta-select{color:var(--vscode-text);background:var(--vscode-panel);border:1px solid var(--vscode-border);border-radius:8px;padding:7px 10px;font-family:inherit;font-size:14px}.meta-input:focus,.meta-select:focus{border-color:var(--vscode-accent);box-shadow:var(--focus-ring);outline:none}.meta-checkboxes{border:1px solid var(--vscode-border);border-radius:8px;flex:2;padding:8px 12px}.dietary-options{flex-wrap:wrap;gap:10px;margin-top:6px;display:flex}.dietary-option{color:var(--vscode-text);cursor:pointer;align-items:center;gap:6px;font-size:13px;display:flex}.recipe-meta-display{margin:10px 0 16px}.meta-pills{flex-wrap:wrap;gap:6px;display:flex}.add-ingredient-button{flex:1}.reviews-tab{flex-direction:column;gap:16px;display:flex}.reviews-aggregate{background:var(--accent-hover);border:1px solid var(--vscode-border);border-radius:10px;align-items:center;gap:10px;padding:12px 16px;display:flex}.reviews-avg-rating{color:var(--vscode-text);font-size:20px;font-weight:700}.reviews-avg-emoji{font-size:18px}.reviews-count{color:var(--vscode-muted);font-size:13px}.reviews-empty{color:var(--vscode-muted);border:1px dashed var(--vscode-border);background:var(--accent-hover);border-radius:10px;margin:0;padding:12px;font-size:14px}.reviews-loading{color:var(--vscode-muted);padding:12px;font-size:14px}.reviews-login-prompt{color:var(--vscode-muted);margin:0;font-size:14px}.review-card{border:1px solid var(--vscode-border);background:var(--vscode-panel);border-radius:10px;flex-direction:column;gap:8px;padding:14px;display:flex}.review-card--highlight{border-color:var(--vscode-accent);background:var(--accent-hover);box-shadow:0 2px 8px var(--accent-glow)}.review-most-helpful-label{letter-spacing:.5px;text-transform:uppercase;color:var(--vscode-accent);margin:0;font-size:11px;font-weight:600}.review-header{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.review-author{color:var(--vscode-text);font-size:14px;font-weight:600}.review-date{color:var(--vscode-muted);font-size:12px}.review-edited{color:var(--vscode-muted);font-size:12px;font-style:italic}.review-body{color:var(--vscode-text);white-space:pre-wrap;margin:0;font-size:14px;line-height:1.6}.review-footer{justify-content:space-between;align-items:center;gap:8px;margin-top:4px;display:flex}.review-footer-left,.review-footer-right{align-items:center;gap:6px;display:flex}.review-like-btn{color:var(--vscode-muted);cursor:pointer;background:0 0;border:none;padding:0;font-family:inherit;font-size:13px;transition:color .12s}.review-like-btn:hover,.review-like-btn.is-liked{color:var(--vscode-accent)}.review-like-count{color:var(--vscode-muted);font-size:13px}.review-action-btn{padding:4px 10px;font-size:12px}.review-form{border:1px dashed var(--vscode-accent);background:var(--accent-hover);border-radius:10px;flex-direction:column;gap:10px;padding:14px;display:flex}.review-form-heading{color:var(--vscode-text);margin:0;font-size:14px;font-weight:600}.review-body-input{width:100%;color:var(--vscode-text);background:var(--vscode-panel);border:1px solid var(--vscode-border);resize:vertical;box-sizing:border-box;border-radius:8px;padding:9px 12px;font-family:inherit;font-size:14px;line-height:1.5}.review-body-input::placeholder{color:var(--vscode-muted)}.review-body-input:focus{border-color:var(--vscode-accent);box-shadow:var(--focus-ring);outline:none}.char-count{color:var(--vscode-muted);text-align:right;margin-top:-4px;font-size:12px}.char-count--warn{color:var(--vscode-warning,#d4a017)}.char-count--over{color:var(--vscode-error,#e05252);font-weight:600}.review-edit-form{flex-direction:column;gap:8px;display:flex}.review-edit-actions{justify-content:flex-end;gap:8px;display:flex}.report-dialog{flex-direction:column;gap:10px;padding-top:4px;display:flex}.report-label{color:var(--vscode-text);font-size:13px;font-weight:600}.report-reason-select{width:100%}.report-dialog-actions{justify-content:flex-end;gap:8px;margin-top:4px;display:flex}.tab-btn{color:var(--vscode-muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;padding:8px 12px;font-family:inherit;font-size:13px;transition:border-color .12s,background-color .12s,color .12s}.tab-btn:hover{border-color:var(--vscode-border);color:var(--vscode-text)}.tab-btn.is-active{border-color:var(--vscode-accent);background:var(--vscode-panel);color:var(--vscode-text);box-shadow:0 2px 8px var(--accent-glow)}@media (max-width:775px){.recipe-content{padding:16px 12px 14px}.recipe-header{flex-direction:column;align-items:flex-start;gap:12px}.recipe-meta{flex-wrap:wrap;justify-content:flex-start;width:100%}.recipe-name{word-break:break-word;font-size:20px}.recipe-name-input{max-width:100%;padding:8px 10px;font-size:18px}.recipe-description-input{min-height:60px;padding:10px;font-size:13px}.panel-toolbar{flex-direction:column;align-items:stretch;gap:10px;padding:10px}.toolbar-tabs{flex-wrap:wrap;width:100%}.toolbar-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;width:100%;display:flex}.edit-actions{justify-content:space-between;max-width:none}.meal-select{flex:1;min-width:100px}.panel-content{padding:10px;overflow:visible}.ingredient-card{flex-direction:column;align-items:stretch;gap:8px}.ingredient-card-fields{grid-template-columns:1fr 1fr;grid-auto-rows:auto}.ingredient-field-name{grid-column:1/-1}.ingredient-remove-btn{width:100%}.danger-button{padding:6px 8px;font-size:12px}.ghost-button,.primary-button{padding:8px 10px;font-size:12px}.add-ingredient-button,.step-block{padding:10px}.step-header{flex-wrap:wrap;row-gap:8px}.step-title-input{flex:1;order:2;min-width:0}.step-number{order:1}.step-controls{flex:0 0 100%;order:3;justify-content:space-around}.step-btn{text-align:center;flex:1;max-width:72px}.p-editor-container .ql-toolbar{flex-wrap:wrap;gap:2px;display:flex}.p-editor-container .ql-formats{margin-right:4px}}.signup-wall{border:1px solid var(--vscode-border);background:linear-gradient(180deg, var(--vscode-panel), var(--vscode-panel-strong));text-align:center;border-radius:12px;margin-top:24px;padding:40px 24px}.signup-wall-inner{flex-direction:column;align-items:center;gap:12px;max-width:440px;margin:0 auto;display:flex}.signup-wall-heading{color:var(--vscode-text);margin:0;font-size:1.35rem}.signup-wall-tease{color:var(--vscode-muted);margin:0;line-height:1.5}.signup-wall-actions{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:8px;display:flex}.signup-wall-note{color:var(--vscode-muted);opacity:.8;margin:4px 0 0;font-size:.8rem}.recipe-store{color:var(--vscode-text);box-sizing:border-box;width:100%}.recipe-store .titlebar-actions,.recipe-store .toolbar-actions{color:var(--vscode-muted);align-items:center;gap:8px;display:flex}.recipe-store .titlebar-actions .action,.recipe-store .toolbar-actions .action{border:1px solid var(--vscode-border);background:0 0;border-radius:6px;padding:4px 8px}.recipe-store .store-content{background:linear-gradient(180deg, var(--vscode-panel), var(--vscode-panel-strong));padding:22px 22px 18px}.recipe-store .store-header{border-bottom:1px solid var(--vscode-border);justify-content:space-between;align-items:center;gap:12px;padding-bottom:12px;display:flex}.recipe-store .store-label{color:var(--vscode-muted);letter-spacing:.4px;text-transform:uppercase;margin:0;font-size:12px}.recipe-store .store-name{color:var(--vscode-text);margin:4px 0 0;font-size:24px}.recipe-store .store-helper{color:var(--vscode-muted);max-width:640px;margin:8px 0 0;font-size:14px;line-height:1.5}.recipe-store .store-meta{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.recipe-store .pill{border:1px solid var(--vscode-border);background:var(--vscode-panel);color:var(--vscode-muted);border-radius:999px;padding:6px 10px;font-size:12px}.recipe-store .pill-primary{color:#fff;border-color:var(--vscode-accent);background:var(--vscode-accent);box-shadow:0 4px 12px var(--accent-glow)}.recipe-store .pill-ghost{background:var(--accent-hover)}.recipe-store .store-panel{border:1px solid var(--vscode-border);background:var(--vscode-panel-deep);border-radius:12px;margin-top:18px}.recipe-store .panel-toolbar{border-bottom:1px solid var(--vscode-border);background:var(--vscode-panel-strong);justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.recipe-store .toolbar-tabs{align-items:center;gap:6px;display:flex}.recipe-store .toolbar-mode-toggle{border:1px solid var(--vscode-border);background:var(--vscode-panel-deep);border-radius:10px;align-items:center;gap:4px;margin-left:auto;padding:3px;display:flex}.recipe-store .tab{cursor:pointer;color:var(--vscode-muted);background:0 0;border:1px solid #0000;border-radius:8px;padding:8px 12px;font-size:13px;transition:border-color .12s,background-color .12s,color .12s}.recipe-store .tab.is-active{border-color:var(--vscode-accent);background:var(--vscode-panel);color:var(--vscode-text);box-shadow:0 2px 8px var(--accent-glow)}.recipe-store .panel-content{flex-direction:column;gap:12px;padding:14px;display:flex;overflow:visible}.recipe-store .store-form{flex-direction:column;gap:12px;display:flex}.recipe-store .form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.recipe-store .ingredient-input{border:1px solid var(--vscode-border);background:var(--vscode-panel);border-radius:10px;grid-column:1/-1;grid-template-columns:1.5fr repeat(2,120px) auto;align-items:flex-end;gap:10px;padding:12px;display:grid}.recipe-store .ingredient-input .form-field{box-shadow:none;background:0 0;border:none;gap:6px;padding:0}.recipe-store .ingredient-name-input{min-width:0}.recipe-store .number-input{border:1px solid var(--vscode-border);background:var(--vscode-panel);color:var(--vscode-text);border-radius:8px;padding:10px 12px;font-size:14px;transition:border-color .12s,box-shadow .12s,background-color .12s}.recipe-store .number-input:focus{border-color:var(--vscode-accent);background:var(--accent-hover);box-shadow:var(--focus-ring);outline:none}.recipe-store .add-ingredient-button{cursor:pointer;opacity:1;justify-self:end;padding:10px 14px}.recipe-store .no-ingredients-text{border:1px dashed var(--vscode-border);color:var(--vscode-muted);background:var(--accent-hover);border-radius:10px;grid-column:1/-1;margin:0;padding:12px}.recipe-store .form-field{border:1px solid var(--vscode-border);background:var(--vscode-panel);border-radius:10px;flex-direction:column;gap:8px;padding:12px;display:flex}.recipe-store .form-field-full{grid-column:1/-1}.recipe-store .field-label{color:var(--vscode-muted);letter-spacing:.4px;text-transform:uppercase;margin:0;font-size:12px}.recipe-store .field-hint{color:var(--vscode-muted);margin:0;font-size:12px;line-height:1.5}.recipe-store .field-error{color:var(--vscode-danger);margin:0;font-size:12px;line-height:1.5}.recipe-store .has-error,.recipe-store .input-error{border-color:var(--vscode-danger)}.recipe-store .input-error:focus{border-color:var(--vscode-danger);box-shadow:0 0 0 1px #ef444459}.recipe-store .similar-recipe-suggestion{border:1px solid var(--vscode-accent);background:var(--accent-hover);color:var(--vscode-text);border-radius:10px;grid-column:1/-1;align-items:center;gap:10px;padding:12px;font-size:13px;display:flex}.recipe-store .suggestion-icon{font-size:16px}.recipe-store .suggestion-link{color:var(--vscode-accent);text-decoration:underline}.recipe-store .suggestion-link:hover{color:var(--vscode-accent-deep)}.recipe-store .text-input,.recipe-store .text-area{border:1px solid var(--vscode-border);background:var(--vscode-panel);color:var(--vscode-text);border-radius:8px;padding:10px 12px;font-size:14px;transition:border-color .12s,box-shadow .12s,background-color .12s}.recipe-store .text-input::placeholder,.recipe-store .text-area::placeholder{color:var(--vscode-muted)}.recipe-store .text-input:focus,.recipe-store .text-area:focus{border-color:var(--vscode-accent);background:var(--accent-hover);box-shadow:var(--focus-ring);outline:none}.recipe-store .text-area{resize:vertical;min-height:140px}.recipe-store .radio-group{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.recipe-store .radio-option{border:1px solid var(--vscode-border);color:var(--vscode-muted);cursor:pointer;background:0 0;border-radius:8px;align-items:center;gap:8px;padding:10px 12px;transition:border-color .12s,box-shadow .12s,background-color .12s,color .12s;display:inline-flex;position:relative}.recipe-store .radio-option:hover{border-color:var(--vscode-accent);color:var(--vscode-text);background:var(--accent-hover)}.recipe-store .radio-option.is-active{border-color:var(--vscode-accent);color:var(--vscode-text);background:var(--accent-hover-strong);box-shadow:0 6px 18px var(--accent-glow)}.recipe-store .radio-option.is-active .radio-dot{border-color:var(--vscode-accent);background:var(--vscode-accent)}.recipe-store .radio-input{opacity:0;pointer-events:none;position:absolute}.recipe-store .radio-dot{border:2px solid var(--vscode-muted);border-radius:50%;width:8px;height:8px;transition:border-color .12s,background-color .12s}.recipe-store .form-footer{border:1px solid var(--vscode-border);background:var(--vscode-panel-strong);color:var(--vscode-text);border-radius:10px;justify-content:flex-end;align-items:center;gap:12px;margin-top:6px;padding:12px;font-size:12px;display:flex}.recipe-store .footer-note{align-items:center;gap:8px;display:inline-flex}.recipe-store .status-dot{background:var(--vscode-success);width:8px;height:8px;box-shadow:0 0 0 4px var(--accent-hover);border-radius:50%}.recipe-store .footer-actions{align-items:center;gap:8px;display:inline-flex}.recipe-store .primary-button,.recipe-store .ghost-button{border:1px solid var(--vscode-border);color:var(--vscode-text);opacity:.8;background:0 0;border-radius:8px;padding:10px 14px;font-family:inherit;font-size:13px}.recipe-store .primary-button{background:var(--vscode-accent);border-color:var(--vscode-accent);color:#fff;box-shadow:0 4px 12px var(--accent-glow);opacity:1}.recipe-store .primary-button:hover:not(:disabled){background:var(--vscode-accent-deep);border-color:var(--vscode-accent-deep)}.recipe-store .ghost-button:hover:not(:disabled){border-color:var(--vscode-accent);background:var(--accent-hover);opacity:1}.recipe-store .danger-button{color:var(--vscode-danger);border-color:var(--vscode-danger);box-shadow:none;background:#ef44441a}.recipe-store .danger-button:hover:not(:disabled){background:var(--vscode-danger);color:#fff}.recipe-store .primary-button:disabled,.recipe-store .ghost-button:disabled{cursor:not-allowed;opacity:.5}@media (max-width:960px){.recipe-store .form-grid{grid-template-columns:1fr}.recipe-store .ingredient-input{grid-template-columns:1fr 1fr;grid-auto-rows:auto}.recipe-store .ingredient-action-button{justify-self:stretch}}@media (max-width:720px){.recipe-store .store-header{flex-direction:column;align-items:flex-start}.recipe-store .store-meta{justify-content:flex-start}.recipe-store .titlebar-actions,.recipe-store .toolbar-actions{display:none}.recipe-store .form-footer{flex-direction:column;align-items:flex-start}}@media (max-width:475px){.recipe-store .store-content{padding:14px 12px}.recipe-store .ingredient-input{grid-template-columns:1fr;gap:8px}.recipe-store .ingredient-input .form-field{width:100%}.recipe-store .ingredient-action-button{justify-self:stretch;width:100%}.recipe-store .similar-recipe-suggestion{text-align:left;flex-direction:column;align-items:flex-start}}.foods-list{color:var(--vscode-text);box-sizing:border-box;width:100%}.foods-list .foods-content{background:linear-gradient(180deg, var(--vscode-panel), var(--vscode-panel-strong));padding:22px 22px 18px}.foods-list .foods-header{border-bottom:1px solid var(--vscode-border);justify-content:space-between;align-items:center;gap:12px;padding-bottom:12px;display:flex}.foods-list .foods-label{color:var(--vscode-muted);letter-spacing:.4px;text-transform:uppercase;margin:0;font-size:12px}.foods-list .foods-name{color:var(--vscode-text);margin:4px 0 0;font-size:24px}.foods-list .foods-meta{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.foods-list .pill{border:1px solid var(--vscode-border);background:var(--vscode-panel);color:var(--vscode-muted);border-radius:999px;padding:clamp(.3rem,1vw,.5rem) clamp(.3rem,1.5vw,.5rem);font-size:clamp(.3rem,2vw,.75rem)}.foods-list .pill-primary{color:#fff;border-color:var(--vscode-accent);background:var(--vscode-accent);box-shadow:0 4px 12px var(--accent-glow)}.foods-list .pill-ghost{background:var(--accent-hover)}.foods-list .pill-info{color:#fff;border-color:var(--vscode-info);background:var(--vscode-info);box-shadow:0 4px 12px #06b6d459}.foods-list .foods-panel{border:1px solid var(--vscode-border);background:var(--vscode-panel-deep);border-radius:12px;margin-top:18px}.foods-list .panel-toolbar{border-bottom:1px solid var(--vscode-border);background:var(--vscode-panel-strong);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.foods-list .toolbar-filters{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.foods-list .filter-group{align-items:center;gap:8px;display:flex}.foods-list .filter-label{color:var(--vscode-muted);text-transform:uppercase;letter-spacing:.4px;font-size:12px}.foods-list .filter-select{border:1px solid var(--vscode-border);background:var(--vscode-panel);color:var(--vscode-text);cursor:pointer;border-radius:8px;font-size:13px;transition:border-color .12s,box-shadow .12s}.foods-list .filter-select:focus{border-color:var(--vscode-accent);box-shadow:var(--focus-ring);outline:none}.foods-list .filter-input{border:1px solid var(--vscode-border);background:var(--vscode-panel);color:var(--vscode-text);border-radius:8px;padding:8px 12px;font-size:13px;transition:border-color .12s,box-shadow .12s}.foods-list .filter-input::placeholder{color:var(--vscode-muted)}.foods-list .filter-input:focus{border-color:var(--vscode-accent);box-shadow:var(--focus-ring);outline:none}.foods-list .sort-direction-button{border:1px solid var(--vscode-border);background:var(--vscode-panel);color:var(--vscode-text);cursor:pointer;border-radius:8px;padding:8px 12px;font-size:14px;transition:border-color .12s,background-color .12s}.foods-list .sort-direction-button:hover{border-color:var(--vscode-accent);background:var(--accent-hover)}.foods-list .toolbar-actions{align-items:center;gap:8px;display:flex}.foods-list .primary-button,.foods-list .ghost-button,.foods-list .danger-button{border:1px solid var(--vscode-border);cursor:pointer;border-radius:8px;align-items:center;padding:8px 12px;font-family:inherit;font-size:13px;text-decoration:none;transition:border-color .12s,background-color .12s,color .12s;display:inline-flex}.foods-list .primary-button{background:var(--vscode-accent);border-color:var(--vscode-accent);color:#fff;box-shadow:0 4px 12px var(--accent-glow)}.foods-list .primary-button:hover{background:var(--vscode-accent-deep);border-color:var(--vscode-accent-deep)}.foods-list .ghost-button{color:var(--vscode-text);background:0 0}.foods-list .ghost-button:hover{border-color:var(--vscode-accent);background:var(--accent-hover)}.foods-list .danger-button{color:var(--vscode-danger);border-color:var(--vscode-danger);background:#ef44441a}.foods-list .danger-button:hover{background:var(--vscode-danger);color:#fff}.foods-list .delete-error{border-bottom:1px solid var(--vscode-danger);color:var(--vscode-danger);background:#ef444414;padding:12px;font-size:13px}.foods-list .panel-content{flex-direction:column;gap:12px;padding:14px;display:flex;overflow:auto}.foods-list .no-foods-text{border:1px dashed var(--vscode-border);color:var(--vscode-muted);background:var(--accent-hover);text-align:center;border-radius:10px;margin:0;padding:24px}.foods-list .select-all-row{border-bottom:1px solid var(--vscode-border);padding:8px 12px}.foods-list .checkbox-label{cursor:pointer;color:var(--vscode-muted);align-items:center;gap:10px;font-size:13px;display:inline-flex}.foods-list .checkbox-label:hover{color:var(--vscode-text)}.foods-list .checkbox-text{-webkit-user-select:none;user-select:none}.foods-list .food-checkbox{cursor:pointer}.foods-list .food-checkbox .p-checkbox-box{border-color:var(--vscode-accent);width:16px;height:16px}.foods-list .food-checkbox.p-checkbox-checked .p-checkbox-box{background:var(--vscode-accent);border-color:var(--vscode-accent)}.foods-list .food-cards{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px;display:grid}.foods-list .food-card.p-card .p-card-body{width:100%}.foods-list .food-card{border:1px solid var(--vscode-border);background:var(--vscode-panel);border-radius:10px;gap:12px;padding:clamp(.8rem,1.5vw,1rem);transition:border-color .14s,background-color .14s,box-shadow .14s;display:flex}.foods-list .food-card:hover{border-color:var(--vscode-accent);background:var(--accent-hover);box-shadow:0 4px 12px var(--shadow-container)}.foods-list .food-card.is-selected{border-color:var(--vscode-accent);background:var(--accent-hover-strong);box-shadow:0 0 0 1px var(--vscode-accent)}.foods-list .food-card.is-used{border-left:3px solid var(--vscode-info)}.foods-list .card-checkbox{align-items:flex-start;padding-top:2px;display:flex}.foods-list .card-content{min-width:0;color:inherit;flex-direction:column;flex:1;gap:8px;text-decoration:none;display:flex}.foods-list .card-header{flex-wrap:nowrap;justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.foods-list .card-title{color:var(--vscode-text);-webkit-line-clamp:2;text-overflow:ellipsis;-webkit-box-orient:vertical;flex:1;min-width:0;margin:0;font-size:clamp(.75rem,2.5vw,1rem);font-weight:600;display:-webkit-box;overflow:hidden}.foods-list .card-badges{flex-wrap:nowrap;flex-shrink:0;align-items:center;gap:6px;display:flex}.foods-list .card-macros{color:var(--vscode-muted);margin:0;font-size:clamp(.6rem,2vw,.875rem);line-height:1.5}.foods-list .card-footer{align-items:center;gap:14px;margin-top:auto;display:flex}.foods-list .card-meta{color:var(--vscode-muted);font-size:12px}@media (max-width:720px){.foods-list .foods-header{flex-direction:column;align-items:flex-start}.foods-list .foods-meta{justify-content:flex-start}.foods-list .panel-toolbar{flex-direction:column;align-items:flex-start}.foods-list .toolbar-filters{width:100%}.foods-list .toolbar-actions{justify-content:flex-start;width:100%}.foods-list .food-cards{grid-template-columns:1fr}}.food-view{color:var(--vscode-text);box-sizing:border-box;width:100%}.food-view .food-content{background:linear-gradient(180deg, var(--vscode-panel), var(--vscode-panel-strong));padding:22px 22px 18px}.food-view .food-header{border-bottom:1px solid var(--vscode-border);justify-content:space-between;align-items:flex-start;gap:12px;padding-bottom:12px;display:flex}.food-view .food-header-container{flex-direction:column;gap:4px;display:flex}.food-view .back-link{color:var(--vscode-accent);margin-bottom:4px;font-size:13px;text-decoration:none}.food-view .back-link:hover{text-decoration:underline}.food-view .food-label{color:var(--vscode-muted);letter-spacing:.4px;text-transform:uppercase;margin:0;font-size:12px}.food-view .food-name{color:var(--vscode-text);margin:4px 0 0;font-size:24px}.food-view .food-meta{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.food-view .pill{border:1px solid var(--vscode-border);background:var(--vscode-panel);color:var(--vscode-muted);border-radius:999px;padding:6px 10px;font-size:12px}.food-view .pill-primary{color:#fff;border-color:var(--vscode-accent);background:var(--vscode-accent);box-shadow:0 4px 12px var(--accent-glow)}.food-view .pill-info{color:#fff;border-color:var(--vscode-info);background:var(--vscode-info);box-shadow:0 4px 12px var(--info-glow)}.food-view .food-panel{border:1px solid var(--vscode-border);background:var(--vscode-panel-deep);border-radius:12px;margin-top:18px}.food-view .panel-toolbar{border-bottom:1px solid var(--vscode-border);background:var(--vscode-panel-strong);justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.food-view .toolbar-tabs{align-items:center;gap:6px;display:flex}.food-view .tab{color:var(--vscode-muted);background:0 0;border:1px solid #0000;border-radius:8px;padding:8px 12px;font-size:13px}.food-view .tab.is-active{border-color:var(--vscode-accent);background:var(--vscode-panel);color:var(--vscode-text);box-shadow:0 2px 8px var(--accent-glow)}.food-view .toolbar-actions{align-items:center;gap:8px;display:flex}.food-view .primary-button,.food-view .danger-button{border:1px solid var(--vscode-border);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;padding:8px 14px;font-family:inherit;font-size:13px;text-decoration:none;transition:border-color .12s,background-color .12s;display:inline-flex}.food-view .primary-button{background:var(--vscode-accent);border-color:var(--vscode-accent);color:#fff;box-shadow:0 4px 12px var(--accent-glow)}.food-view .primary-button:hover{background:var(--vscode-accent-deep);border-color:var(--vscode-accent-deep)}.food-view .danger-button{color:var(--vscode-danger);border-color:var(--vscode-danger);background:#ef44441a}.food-view .danger-button:hover:not(:disabled){background:var(--vscode-danger);color:#fff}.food-view .danger-button:disabled{opacity:.5;cursor:not-allowed}.food-view .panel-content{flex-direction:column;gap:24px;padding:18px;display:flex}.food-view .section-title{color:var(--vscode-muted);text-transform:uppercase;letter-spacing:.4px;margin:0 0 12px;font-size:14px}.food-view .nutrition-section{background:var(--accent-hover);border:1px solid var(--accent-border);border-radius:10px;padding:16px}.food-view .nutrition-grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:16px;display:grid}.food-view .nutrition-item{background:var(--vscode-panel);border:1px solid var(--accent-border);text-align:center;box-shadow:0 2px 8px var(--shadow-container);border-radius:8px;flex-direction:column;gap:4px;padding:12px;display:flex}.food-view .nutrition-item.nutrition-item-sub{border-color:var(--vscode-border);background:#ffffff05}.food-view .nutrition-item.nutrition-item-sub .nutrition-label:before{content:"↳ ";opacity:.5}.food-view .nutrition-item.nutrition-item-sub .nutrition-value{font-size:15px}.food-view .nutrition-label{color:var(--vscode-muted);text-transform:uppercase;letter-spacing:.3px;font-size:11px}.food-view .nutrition-value{color:var(--vscode-text);font-size:18px;font-weight:600}.food-view .serving-section{border:1px solid var(--vscode-border);background:0 0;border-radius:10px;padding:16px}.food-view .serving-info{color:var(--vscode-text);margin:0 0 12px;font-size:14px}.food-view .measurements-info{color:var(--vscode-text);flex-direction:column;gap:8px;font-size:14px;display:flex}.food-view .measurement-tags{flex-wrap:wrap;gap:8px;display:flex}.food-view .measurement-tag{background:var(--accent-hover-strong);border:1px solid var(--accent-border);color:var(--vscode-text);border-radius:6px;align-items:center;padding:6px 10px;font-size:12px;display:inline-flex}.food-view .macro-summary{background:var(--vscode-panel-strong);border:1px solid var(--vscode-border);color:var(--vscode-muted);border-radius:8px;margin:0;padding:12px;font-size:13px}.food-view .off-attribution{color:var(--vscode-muted);opacity:.7;margin:0;font-size:11px}.food-view .off-attribution a{color:var(--vscode-accent);text-decoration:none}.food-view .off-attribution a:hover{text-decoration:underline}@media (max-width:720px){.food-view .food-header{flex-direction:column;align-items:flex-start}.food-view .food-meta{justify-content:flex-start}.food-view .panel-toolbar{flex-direction:column;align-items:stretch}.food-view .toolbar-tabs{width:100%}.food-view .tab{text-align:center;width:100%}.food-view .toolbar-actions{flex-direction:column;width:100%}.food-view .primary-button,.food-view .danger-button{width:100%}}@media (max-width:475px){.food-view .food-content{padding:14px 12px}.food-view .nutrition-grid{grid-template-columns:1fr 1fr}}.food-store{color:var(--vscode-text);box-sizing:border-box;width:100%}.food-store .store-content{background:linear-gradient(180deg, var(--vscode-panel), var(--vscode-panel-strong));padding:22px 22px 18px}.food-store .store-header{border-bottom:1px solid var(--vscode-border);justify-content:space-between;align-items:center;gap:12px;padding-bottom:12px;display:flex}.food-store .store-label{color:var(--vscode-muted);letter-spacing:.4px;text-transform:uppercase;margin:0;font-size:12px}.food-store .store-name{color:var(--vscode-text);margin:4px 0 0;font-size:24px}.food-store .store-helper{color:var(--vscode-muted);max-width:640px;margin:8px 0 0;font-size:14px;line-height:1.5}.food-store .store-meta{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.food-store .pill{border:1px solid var(--vscode-border);background:var(--vscode-panel);color:var(--vscode-muted);border-radius:999px;padding:6px 10px;font-size:12px}.food-store .pill-primary{color:#fff;border-color:var(--vscode-accent);background:var(--vscode-accent);box-shadow:0 4px 12px var(--accent-glow)}.food-store .store-panel{border:1px solid var(--vscode-border);background:var(--vscode-panel-deep);border-radius:12px;margin-top:18px}.food-store .panel-toolbar{border-bottom:1px solid var(--vscode-border);background:var(--vscode-panel-strong);justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.food-store .toolbar-tabs{align-items:center;gap:6px;display:flex}.food-store .tab{cursor:pointer;color:var(--vscode-muted);background:0 0;border:1px solid #0000;border-radius:8px;padding:8px 12px;font-size:13px;transition:border-color .12s,background-color .12s,color .12s}.food-store .tab.is-active{border-color:var(--vscode-accent);background:var(--vscode-panel);color:var(--vscode-text);box-shadow:0 2px 8px var(--accent-glow)}.food-store .panel-content{flex-direction:column;gap:12px;padding:14px;display:flex;overflow:visible}.food-store .store-form{flex-direction:column;gap:12px;display:flex}.food-store .form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.food-store .form-field{border:1px solid var(--vscode-border);background:var(--vscode-panel);border-radius:10px;flex-direction:column;gap:8px;padding:12px;display:flex}.food-store .form-field-full{grid-column:1/-1}.food-store .field-label{color:var(--vscode-muted);letter-spacing:.4px;text-transform:uppercase;margin:0;font-size:12px}.food-store .field-hint{color:var(--vscode-muted);margin:0;font-size:12px;line-height:1.5}.food-store .field-error{color:var(--vscode-danger);margin:0;font-size:12px;line-height:1.5}.food-store .has-error,.food-store .input-error{border-color:var(--vscode-danger)}.food-store .input-error:focus{border-color:var(--vscode-danger);box-shadow:0 0 0 1px #ef444459}.food-store .text-input{border:1px solid var(--vscode-border);background:var(--vscode-panel);color:var(--vscode-text);border-radius:8px;padding:10px 12px;font-size:14px;transition:border-color .12s,box-shadow .12s,background-color .12s}.food-store .text-input::placeholder{color:var(--vscode-muted)}.food-store .text-input:focus{border-color:var(--vscode-accent);background:var(--accent-hover);box-shadow:var(--focus-ring);outline:none}.food-store .macro-grid{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.food-store .macro-field{flex-direction:column;gap:4px;display:flex}.food-store .macro-label{color:var(--vscode-muted);text-transform:uppercase;letter-spacing:.3px;font-size:11px}.food-store .macro-input{font-size:13px}.food-store .measurements-list{flex-wrap:wrap;gap:8px;margin-bottom:8px;display:flex}.food-store .measurement-tag{background:var(--accent-hover-strong);border:1px solid var(--accent-border);color:var(--vscode-text);border-radius:6px;align-items:center;gap:6px;padding:6px 10px;font-size:12px;display:inline-flex}.food-store .measurement-tag.measurement-tag-warn{border-color:var(--vscode-warning,#d4a017);background:color-mix(in srgb, var(--vscode-warning,#d4a017) 10%, transparent)}.food-store .measurement-tag-label{align-items:center;gap:4px;display:inline-flex}.food-store .measurement-warn-icon{cursor:help;font-size:11px}.food-store .measurement-grams-input{border:1px solid var(--accent-border);background:var(--vscode-bg);width:64px;color:var(--vscode-text);border-radius:4px;padding:2px 4px;font-size:11px}.food-store .measurement-grams-input::placeholder{color:var(--vscode-muted)}.food-store .measurement-grams-label{color:var(--vscode-muted);font-size:11px}.food-store .measurement-remove{color:var(--vscode-muted);cursor:pointer;background:0 0;border:none;padding:0;font-size:14px;line-height:1}.food-store .measurement-remove:hover{color:var(--vscode-danger)}.food-store .add-measurement{align-items:center;gap:8px;display:flex}.food-store .measurement-input{flex:1;max-width:300px}.food-store .form-footer{border:1px solid var(--vscode-border);background:var(--vscode-panel-strong);color:var(--vscode-text);border-radius:10px;justify-content:flex-end;align-items:center;gap:12px;margin-top:6px;padding:12px;font-size:12px;display:flex}.food-store .footer-actions{align-items:center;gap:8px;display:inline-flex}.food-store .primary-button,.food-store .ghost-button{border:1px solid var(--vscode-border);color:var(--vscode-text);cursor:pointer;background:0 0;border-radius:8px;padding:10px 14px;font-family:inherit;font-size:13px}.food-store .primary-button{background:var(--vscode-accent);border-color:var(--vscode-accent);color:#fff;box-shadow:0 4px 12px var(--accent-glow)}.food-store .primary-button:hover:not(:disabled){background:var(--vscode-accent-deep);border-color:var(--vscode-accent-deep)}.food-store .ghost-button:hover:not(:disabled){border-color:var(--vscode-accent);background:var(--accent-hover)}.food-store .primary-button:disabled,.food-store .ghost-button:disabled{cursor:not-allowed;opacity:.5}@media (max-width:960px){.food-store .form-grid{grid-template-columns:1fr}.food-store .macro-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:720px){.food-store .store-header{flex-direction:column;align-items:flex-start}.food-store .store-meta{justify-content:flex-start}}@media (max-width:475px){.food-store .store-content{padding:14px 12px}.food-store .macro-grid{grid-template-columns:1fr}.food-store .add-measurement{flex-direction:column;align-items:stretch}.food-store .measurement-input{max-width:none}}.pantry-list{color:var(--vscode-text);box-sizing:border-box;width:100%}.pantry-list .pantry-content{background:linear-gradient(180deg, var(--vscode-panel), var(--vscode-panel-strong));padding:22px 22px 18px}.pantry-list .pantry-header{border-bottom:1px solid var(--vscode-border);justify-content:space-between;align-items:center;gap:12px;padding-bottom:12px;display:flex}.pantry-list .pantry-label{color:var(--vscode-muted);letter-spacing:.4px;text-transform:uppercase;margin:0;font-size:12px}.pantry-list .pantry-name{color:var(--vscode-text);margin:4px 0 0;font-size:24px}.pantry-list .pantry-meta{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.pantry-list .pill{border:1px solid var(--vscode-border);background:var(--vscode-panel);color:var(--vscode-muted);border-radius:999px;padding:clamp(.3rem,1vw,.5rem) clamp(.3rem,1.5vw,.5rem);font-size:clamp(.3rem,2vw,.75rem)}.pantry-list .pill-primary{color:#fff;border-color:var(--vscode-accent);background:var(--vscode-accent);box-shadow:0 4px 12px var(--accent-glow)}.pantry-list .pill-ghost{background:var(--accent-hover)}.pantry-list .pill-success{color:#fff;border-color:var(--vscode-success);background:var(--vscode-success);box-shadow:0 4px 12px var(--accent-glow)}.pantry-list .pill-warning{color:#fff;border-color:var(--vscode-warning);background:var(--vscode-warning);box-shadow:0 4px 12px #f59e0b59}.pantry-list .pill-danger{color:#fff;border-color:var(--vscode-danger);background:var(--vscode-danger);box-shadow:0 4px 12px #ef444459}.pantry-list .pantry-stats{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-bottom:18px;display:grid}.pantry-list .stat-card{background:var(--vscode-panel);border:1px solid var(--vscode-border);box-shadow:0 2px 8px var(--shadow-container);border-radius:10px;flex-direction:column;gap:8px;padding:16px;display:flex}.pantry-list .stat-card .stat-label{color:var(--vscode-muted);text-transform:uppercase;letter-spacing:.5px;font-size:11px}.pantry-list .stat-card .stat-value{color:var(--vscode-text);font-size:28px;font-weight:600}.pantry-list .stat-card.stat-good{border-left:3px solid var(--vscode-success)}.pantry-list .stat-card.stat-warning{border-left:3px solid var(--vscode-warning)}.pantry-list .stat-card.stat-danger{border-left:3px solid var(--vscode-danger)}.pantry-list .pantry-panel{border:1px solid var(--vscode-border);background:var(--vscode-panel-deep);border-radius:12px;margin-top:18px}.pantry-list .panel-toolbar{border-bottom:1px solid var(--vscode-border);background:var(--vscode-panel-strong);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.pantry-list .toolbar-filters{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.pantry-list .filter-group{align-items:center;gap:8px;display:flex}.pantry-list .filter-label{color:var(--vscode-muted);text-transform:uppercase;letter-spacing:.4px;font-size:12px}.pantry-list .filter-select{border:1px solid var(--vscode-border);background:var(--vscode-panel);color:var(--vscode-text);cursor:pointer;border-radius:8px;font-size:13px;transition:border-color .12s,box-shadow .12s}.pantry-list .filter-select:focus{border-color:var(--vscode-accent);box-shadow:var(--focus-ring);outline:none}.pantry-list .filter-input{border:1px solid var(--vscode-border);background:var(--vscode-panel);color:var(--vscode-text);border-radius:8px;padding:8px 12px;font-size:13px;transition:border-color .12s,box-shadow .12s}.pantry-list .filter-input::placeholder{color:var(--vscode-muted)}.pantry-list .filter-input:focus{border-color:var(--vscode-accent);box-shadow:var(--focus-ring);outline:none}.pantry-list .sort-direction-button{border:1px solid var(--vscode-border);background:var(--vscode-panel);color:var(--vscode-text);cursor:pointer;border-radius:8px;padding:8px 12px;font-size:14px;transition:border-color .12s,background-color .12s}.pantry-list .sort-direction-button:hover{border-color:var(--vscode-accent);background:var(--accent-hover)}.pantry-list .toolbar-actions{align-items:center;gap:8px;display:flex}.pantry-list .primary-button,.pantry-list .ghost-button,.pantry-list .danger-button{border:1px solid var(--vscode-border);cursor:pointer;border-radius:8px;align-items:center;padding:8px 12px;font-family:inherit;font-size:13px;text-decoration:none;transition:border-color .12s,background-color .12s,color .12s;display:inline-flex}.pantry-list .primary-button{background:var(--vscode-accent);border-color:var(--vscode-accent);color:#fff;box-shadow:0 4px 12px var(--accent-glow)}.pantry-list .primary-button:hover{background:var(--vscode-accent-deep);border-color:var(--vscode-accent-deep)}.pantry-list .ghost-button{color:var(--vscode-text);background:0 0}.pantry-list .ghost-button:hover{border-color:var(--vscode-accent);background:var(--accent-hover)}.pantry-list .danger-button{color:var(--vscode-danger);border-color:var(--vscode-danger);background:#ef44441a}.pantry-list .danger-button:hover{background:var(--vscode-danger);color:#fff}.pantry-list .bulk-actions-bar{background:var(--accent-hover-strong);border-bottom:1px solid var(--vscode-accent);color:var(--vscode-text);justify-content:space-between;align-items:center;padding:12px;font-size:13px;display:flex}.pantry-list .panel-content{flex-direction:column;gap:12px;padding:14px;display:flex;overflow:auto}.pantry-list .empty-state{border:1px dashed var(--vscode-border);color:var(--vscode-muted);background:var(--accent-hover);text-align:center;border-radius:10px;margin:0;padding:24px}.pantry-list .empty-state p{margin:0 0 16px;font-size:14px}.pantry-list .pantry-table{border-collapse:collapse;width:100%}.pantry-list .pantry-table thead{background:var(--vscode-panel-strong);border-bottom:1px solid var(--vscode-border)}.pantry-list .pantry-table thead th{text-align:left;color:var(--vscode-muted);text-transform:uppercase;letter-spacing:.6px;padding:10px 12px;font-size:11px;font-weight:600}.pantry-list .pantry-table tbody tr{border-bottom:1px solid var(--vscode-border);transition:background-color .14s}.pantry-list .pantry-table tbody tr:hover{background:var(--accent-hover)}.pantry-list .pantry-table tbody tr.status-expired{border-left:3px solid var(--vscode-danger);background:#ef44440d}.pantry-list .pantry-table tbody tr.status-expiring-soon{border-left:3px solid var(--vscode-warning);background:#f59e0b0d}.pantry-list .pantry-table tbody td{color:var(--vscode-text);padding:12px;font-size:13px}.pantry-list .pantry-table tbody td a{color:var(--vscode-accent);font-weight:500;text-decoration:none}.pantry-list .pantry-table tbody td a:hover{text-decoration:underline}.pantry-list .pantry-table tbody input[type=checkbox]{width:16px;height:16px;accent-color:var(--vscode-accent);cursor:pointer}.pantry-list .status-badge{text-transform:uppercase;letter-spacing:.5px;border:1px solid;border-radius:999px;padding:4px 10px;font-size:10px;font-weight:600;display:inline-block}.pantry-list .status-badge.status-good{color:#059669;border-color:var(--vscode-success);background:#10b9811f}.pantry-list .status-badge.status-expiring-soon{color:#d97706;border-color:var(--vscode-warning);background:#f59e0b1f}.pantry-list .status-badge.status-expired{color:#dc2626;border-color:var(--vscode-danger);background:#ef44441f}.pantry-list .status-badge.status-frozen{color:#0891b2;border-color:var(--vscode-info);background:#06b6d41f}.pantry-list .item-actions{gap:6px;display:flex}.pantry-list .item-actions .btn-small{border:1px solid var(--vscode-border);cursor:pointer;border-radius:6px;padding:6px 10px;font-size:12px;text-decoration:none;transition:all .12s;display:inline-block}.pantry-list .item-actions .btn-small.btn-secondary{background:var(--vscode-panel);color:var(--vscode-text)}.pantry-list .item-actions .btn-small.btn-secondary:hover{border-color:var(--vscode-accent);background:var(--accent-hover)}.pantry-list .item-actions .btn-small.btn-danger{color:var(--vscode-danger);border-color:var(--vscode-danger);background:#ef44441a}.pantry-list .item-actions .btn-small.btn-danger:hover{background:var(--vscode-danger);color:#fff}.pantry-list .item-actions .btn-small.btn-info{color:var(--vscode-info);border-color:var(--vscode-info);background:#06b6d41a}.pantry-list .item-actions .btn-small.btn-info:hover{background:#06b6d440}.pantry-list .select-all-row{background:var(--vscode-panel-strong);border-bottom:1px solid var(--vscode-border);padding:12px;display:none}.pantry-list .select-all-row .select-all-label{cursor:pointer;color:var(--vscode-text);align-items:center;gap:8px;font-size:13px;display:flex}.pantry-list .select-all-row .select-all-label .select-all-checkbox{width:16px;height:16px;accent-color:var(--vscode-accent);cursor:pointer}.pantry-list .select-all-row .select-all-label .checkbox-text{-webkit-user-select:none;user-select:none}.pantry-list .pantry-cards{flex-direction:column;gap:12px;display:none}.pantry-list .pantry-card{background:var(--vscode-panel);border:1px solid var(--vscode-border);box-shadow:0 2px 8px var(--shadow-container);border-radius:10px;gap:12px;padding:14px;transition:all .14s;display:flex;overflow:hidden}.pantry-list .pantry-card.is-selected{border-color:var(--vscode-accent);background:var(--accent-hover)}.pantry-list .pantry-card.status-expired{border-left:3px solid var(--vscode-danger)}.pantry-list .pantry-card.status-expiring-soon{border-left:3px solid var(--vscode-warning)}.pantry-list .pantry-card .card-checkbox{align-items:flex-start;padding-top:2px;display:flex}.pantry-list .pantry-card .card-checkbox .item-checkbox{width:18px;height:18px;accent-color:var(--vscode-accent);cursor:pointer}.pantry-list .pantry-card .card-content{flex-direction:column;flex:1;gap:12px;min-width:0;display:flex}.pantry-list .pantry-card .card-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.pantry-list .pantry-card .card-header .card-title{color:var(--vscode-accent);-webkit-line-clamp:2;text-overflow:ellipsis;word-break:break-word;-webkit-box-orient:vertical;flex:1;min-width:0;margin:0;font-size:16px;font-weight:600;text-decoration:none;display:-webkit-box;overflow:hidden}.pantry-list .pantry-card .card-header .card-title:hover{text-decoration:underline}.pantry-list .pantry-card .card-header .card-badges{flex-wrap:wrap;flex-shrink:0;align-items:flex-start;gap:6px;display:flex}.pantry-list .pantry-card .card-details{flex-direction:column;gap:8px;display:flex}.pantry-list .pantry-card .card-details .detail-row{justify-content:space-between;gap:12px;font-size:13px;display:flex}.pantry-list .pantry-card .card-details .detail-row .detail-label{color:var(--vscode-muted);font-weight:500}.pantry-list .pantry-card .card-details .detail-row .detail-value{color:var(--vscode-text);text-align:right}.pantry-list .pantry-card .card-actions{border-top:1px solid var(--vscode-border);flex-wrap:nowrap;align-items:center;gap:8px;padding-top:8px;display:flex}.pantry-list .pantry-card .card-actions .btn-small{text-align:center;flex:1 1 0;min-width:0}@media (max-width:720px){.pantry-list .pantry-header{flex-direction:column;align-items:flex-start}.pantry-list .pantry-meta{justify-content:flex-start}.pantry-list .panel-toolbar{flex-direction:column;align-items:flex-start}.pantry-list .toolbar-filters{width:100%}.pantry-list .toolbar-actions{justify-content:flex-start;width:100%}.pantry-list .pantry-stats{grid-template-columns:1fr}.pantry-list .pantry-table{display:none}.pantry-list .select-all-row{display:block}.pantry-list .pantry-cards{display:flex}}.pantry-store-page{color:var(--vscode-text);box-sizing:border-box;width:100%}.pantry-store-page .pantry-content{background:linear-gradient(180deg, var(--vscode-panel), var(--vscode-panel-strong));padding:22px}.pantry-store-page h1{color:var(--vscode-text);margin:0 0 20px;font-size:24px}.pantry-store-page .form-container{background:var(--vscode-panel-deep);border:1px solid var(--vscode-border);border-radius:10px;padding:20px}.pantry-store-page .form-section{margin-bottom:18px}.pantry-store-page .form-section label{color:var(--vscode-muted);text-transform:uppercase;letter-spacing:.4px;margin-bottom:8px;font-size:12px;display:block}.pantry-store-page .form-section label .required{color:var(--vscode-danger)}.pantry-store-page .form-section input,.pantry-store-page .form-section select{border:1px solid var(--vscode-border);background:var(--vscode-panel);width:100%;color:var(--vscode-text);box-sizing:border-box;border-radius:8px;padding:10px 12px;font-family:inherit;font-size:13px;transition:border-color .12s,box-shadow .12s}.pantry-store-page .form-section input::placeholder,.pantry-store-page .form-section select::placeholder{color:var(--vscode-muted)}.pantry-store-page .form-section input:focus,.pantry-store-page .form-section select:focus{border-color:var(--vscode-accent);box-shadow:var(--focus-ring);outline:none}.pantry-store-page .form-section input:disabled,.pantry-store-page .form-section select:disabled{background:var(--vscode-panel-strong);cursor:not-allowed;opacity:.5}.pantry-store-page .form-section .size-input-group{gap:8px;display:flex}.pantry-store-page .form-section .size-input-group .size-number{flex:2}.pantry-store-page .form-section .size-input-group .size-unit{flex:1}.pantry-store-page .form-section .size-input-group select.size-unit{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%2364748b' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-position:right 8px center;background-repeat:no-repeat;padding-right:28px}.pantry-store-page .form-section .size-input-group .p-dropdown.size-unit{border:1px solid var(--vscode-border);background:var(--vscode-panel);color:var(--vscode-text);cursor:pointer;box-sizing:border-box;border-radius:8px;font-size:13px;transition:border-color .12s,box-shadow .12s}.pantry-store-page .form-section small{color:var(--vscode-muted);margin-top:6px;font-size:11px;display:block}.pantry-store-page .date-preview{background:var(--accent-hover);color:var(--vscode-muted);border:1px solid var(--accent-border);border-radius:6px;margin-top:10px;padding:10px;font-size:12px}.pantry-store-page .date-preview strong{text-transform:capitalize;color:var(--vscode-text)}.pantry-store-page .form-actions{gap:10px;margin-top:24px;display:flex}.pantry-store-page .btn{border:1px solid var(--vscode-border);cursor:pointer;border-radius:8px;padding:10px 16px;font-family:inherit;font-size:13px;font-weight:500;text-decoration:none;transition:all .12s;display:inline-block}.pantry-store-page .btn:disabled{opacity:.5;cursor:not-allowed}.pantry-store-page .btn.btn-primary{background:var(--vscode-accent);border-color:var(--vscode-accent);color:#fff;box-shadow:0 4px 12px var(--accent-glow)}.pantry-store-page .btn.btn-primary:hover:not(:disabled){background:var(--vscode-accent-deep);border-color:var(--vscode-accent-deep)}.pantry-store-page .btn.btn-secondary{background:var(--vscode-panel);color:var(--vscode-text)}.pantry-store-page .btn.btn-secondary:hover:not(:disabled){border-color:var(--vscode-accent);background:var(--accent-hover)}@media (max-width:720px){.pantry-store-page .form-actions{flex-direction:column}.pantry-store-page .form-actions .btn{width:100%}}.bcm-form .form-actions{flex-flow:row;justify-content:space-between;display:flex}.shopping-list{color:var(--vscode-text);box-sizing:border-box;width:100%}.shopping-list .shopping-list-content{background:linear-gradient(180deg, var(--vscode-panel), var(--vscode-panel-strong));padding:22px 22px 18px}.shopping-list .shopping-list-header{border-bottom:1px solid var(--vscode-border);justify-content:space-between;align-items:center;gap:12px;padding-bottom:12px;display:flex}.shopping-list .shopping-list-header h1{color:var(--vscode-text);margin:0;font-size:24px}.shopping-list-footer{border-top:1px solid var(--vscode-border);justify-content:flex-end;align-items:center;gap:12px;padding-top:12px;display:flex}.shopping-list .shopping-list-header-actions{flex:none;align-items:center;gap:8px;display:flex}.shopping-list .done-shopping-button{color:#fff;background:var(--vscode-accent);border:1px solid var(--vscode-accent);box-shadow:0 4px 12px var(--accent-glow);cursor:pointer;border-radius:999px;flex:none;align-items:center;gap:6px;padding:.4rem .9rem;font-size:.8rem;font-weight:600;display:inline-flex}.shopping-list .done-shopping-button .pi{font-size:14px}.shopping-list .done-shopping-button:hover:not(:disabled){filter:brightness(1.05)}.shopping-list .done-shopping-button:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.shopping-list .share-button{color:var(--vscode-text);background:var(--vscode-panel-strong);border:1px solid var(--vscode-border);cursor:pointer;border-radius:999px;flex:none;align-items:center;gap:6px;padding:.4rem .9rem;font-size:.8rem;font-weight:600;display:inline-flex}.shopping-list .share-button .pi{font-size:14px}.shopping-list .share-button:hover:not(:disabled){background:var(--accent-hover)}.shopping-list .share-button:disabled{opacity:.5;cursor:not-allowed}.shopping-list .shopping-list-panel{flex-direction:column;gap:16px;margin-top:16px;display:flex}.shopping-list .variant-tabs{border:1px solid var(--vscode-border);background:var(--vscode-panel-strong);border-radius:999px;align-self:flex-start;gap:2px;padding:2px;display:inline-flex}.shopping-list .variant-tab{color:var(--vscode-muted);cursor:pointer;background:0 0;border:none;border-radius:999px;padding:6px 16px;font-size:13px;font-weight:600}.shopping-list .variant-tab.is-active{background:var(--vscode-accent);color:#fff}.shopping-list .variant-tab:not(.is-active):hover{color:var(--vscode-text)}.shopping-list .add-item-form{flex-wrap:wrap;align-items:flex-end;gap:12px;display:flex}.shopping-list .field{flex-direction:column;gap:4px;display:flex}.shopping-list .field label{color:var(--vscode-muted);text-transform:uppercase;letter-spacing:.4px;font-size:12px}.shopping-list .field .p-autocomplete,.shopping-list .field .p-inputnumber,.shopping-list .field .p-dropdown,.shopping-list .field .p-inputnumber-input{width:100%}.shopping-list .field .p-inputnumber-input,.shopping-list .field .p-dropdown .p-dropdown-label{padding:10px 12px;font-size:14px;line-height:normal}.shopping-list .field-food,.shopping-list .field-product,.shopping-list .field-freeform{flex:auto;min-width:200px}.shopping-list .field .p-inputtext{width:100%;padding:10px 12px;font-size:14px;line-height:normal}.shopping-list .field-amount{flex:none;width:110px}.shopping-list .field-unit{flex:none;width:140px}.shopping-list .add-item-button{color:#fff;border:1px solid var(--vscode-accent);background:var(--vscode-accent);box-shadow:0 4px 12px var(--accent-glow);cursor:pointer;border-radius:999px;flex:none;padding:.5rem 1.25rem;font-size:.85rem;font-weight:600}.shopping-list .add-item-button:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.shopping-list .advanced-toggle{color:var(--vscode-muted);cursor:pointer;background:0 0;border:none;align-self:flex-start;margin-top:-6px;padding:0;font-size:13px;text-decoration:underline}.shopping-list .advanced-toggle:hover{color:var(--vscode-text)}.shopping-list .add-item-error{border:1px solid var(--vscode-border);background:var(--accent-hover);color:var(--vscode-text);border-radius:8px;padding:10px 12px;font-size:13px}.shopping-list .trip-summary{border:1px solid var(--vscode-accent);background:var(--accent-hover);color:var(--vscode-text);border-radius:8px;padding:10px 12px;font-size:13px;font-weight:600}.shopping-list .shopping-list-empty{text-align:center;color:var(--vscode-muted);margin:0;padding:28px 0}.shopping-list .collection-off-hint{color:var(--vscode-muted);margin:0;font-size:13px}.shopping-list .collection-enable-link{font:inherit;color:var(--vscode-accent);cursor:pointer;background:0 0;border:none;padding:0;text-decoration:underline}.shopping-list .collection-enable-link:hover{color:var(--vscode-text)}.shopping-list .shopping-list-items.p-listbox{background:0 0;border:none;border-radius:0}.shopping-list .shopping-list-items .p-listbox-list{padding:0}.shopping-list .shopping-list-items .p-listbox-item{color:var(--vscode-text);border-radius:0;padding:0}.shopping-list .shopping-list-items .p-listbox-item.p-highlight{color:inherit;background:0 0}.shopping-list .shopping-list-items .p-listbox-item:hover{background:var(--accent-hover)}.shopping-list .shopping-list-items .p-listbox-item:focus{box-shadow:inset 0 0 0 2px var(--vscode-accent)}.shopping-list .shopping-list-item{border-bottom:1px solid var(--vscode-border);align-items:center;gap:12px;padding:12px 4px;display:flex;position:relative}.shopping-list .p-listbox-item:last-child .shopping-list-item{border-bottom:none}.shopping-list .item-check.p-highlight .p-checkbox-box,.shopping-list .item-check .p-checkbox-box.p-highlight{background:var(--vscode-accent);border-color:var(--vscode-accent)}.shopping-list .item-check{pointer-events:none;flex:none}.shopping-list .item-body{flex:auto;justify-content:space-between;align-items:center;gap:12px;min-width:0;display:flex}.shopping-list .item-name{color:var(--vscode-text);flex:1;font-weight:500}.shopping-list .item-qty{color:var(--vscode-muted);font-variant-numeric:tabular-nums;font-size:14px}.shopping-list .item-price{color:var(--vscode-text);font-variant-numeric:tabular-nums;flex:none;font-size:14px;font-weight:600}.shopping-list .item-expiration{letter-spacing:.3px;white-space:nowrap;color:var(--vscode-muted);background:var(--vscode-panel-strong);border:1px solid var(--vscode-border);border-radius:999px;flex:none;padding:2px 8px;font-size:11px;font-weight:600}.shopping-list .item-status-pill{text-transform:uppercase;letter-spacing:.4px;white-space:nowrap;color:var(--vscode-warning);background:color-mix(in srgb, var(--vscode-warning) 16%, transparent);border:1px solid color-mix(in srgb, var(--vscode-warning) 40%, transparent);border-radius:999px;flex:none;padding:2px 8px;font-size:11px;font-weight:600}.shopping-list .item-menu{width:32px;height:32px;color:var(--vscode-muted);cursor:pointer;background:0 0;border:none;border-radius:8px;flex:none;justify-content:center;align-items:center;display:flex}.shopping-list .item-menu .pi{font-size:16px}.shopping-list .item-menu:hover{color:var(--vscode-text);background:var(--accent-hover)}.shopping-list .shopping-list-item.status-bought:after{content:"";background:var(--vscode-muted);pointer-events:none;height:2px;position:absolute;top:50%;left:4px;right:4px}.shopping-list .shopping-list-item.status-bought .item-name,.shopping-list .shopping-list-item.status-bought .item-qty{color:var(--vscode-muted)}.shopping-list .shopping-list-row{position:relative;overflow:hidden}.shopping-list .item-remove{color:#fff;background:var(--vscode-danger);cursor:pointer;border:none;justify-content:center;align-items:center;width:0;padding:0;transition:width .2s;display:flex;position:absolute;top:0;bottom:0;right:0;overflow:hidden}.shopping-list .item-remove .pi{font-size:18px}.shopping-list .item-remove:disabled{opacity:.6;cursor:default}.shopping-list .shopping-list-row.is-open .item-remove{width:64px}@media (min-width:721px){.shopping-list .item-remove{display:none}}@media (max-width:720px){.shopping-list .variant-tabs{width:100%}.shopping-list .variant-tab{width:33%}.shopping-list .add-item-form{flex-direction:column;align-items:stretch}.shopping-list .field-food,.shopping-list .field-product,.shopping-list .field-freeform,.shopping-list .field-amount,.shopping-list .field-unit{flex:auto;width:100%;min-width:0}.shopping-list .add-item-button{width:100%}}.menu-item-danger .p-menuitem-link .p-menuitem-text,.menu-item-danger .p-menuitem-link .p-menuitem-icon{color:var(--vscode-danger)}.item-details-dialog .item-details-form{flex-direction:column;gap:14px;display:flex}.item-details-dialog .field{flex-direction:column;gap:6px;display:flex}.item-details-dialog .field .field-label{color:var(--vscode-muted);text-transform:uppercase;letter-spacing:.4px;font-size:12px}.item-details-dialog .field .p-inputnumber,.item-details-dialog .field .p-calendar{width:100%}.item-details-dialog .field .p-inputnumber-input,.item-details-dialog .field .p-calendar .p-inputtext,.item-details-dialog .field input[type=date]{box-sizing:border-box;width:100%;padding:10px 12px;font-size:14px;line-height:normal}.item-details-dialog .field small{color:var(--vscode-muted);font-size:12px}.item-details-dialog .price-mode,.item-details-dialog .expiration-mode{border:1px solid var(--vscode-border);background:var(--vscode-panel-strong);border-radius:999px;align-self:flex-start;gap:2px;padding:2px;display:inline-flex}.item-details-dialog .expiration-portions{flex-direction:column;gap:8px;display:flex}.item-details-dialog .expiration-portion{align-items:center;gap:8px;display:flex}.item-details-dialog .expiration-portion .p-inputnumber{flex:0 0 90px;width:90px}.item-details-dialog .expiration-portion .p-calendar{flex:auto}.item-details-dialog .portion-remove{width:32px;height:32px;color:var(--vscode-muted);cursor:pointer;background:0 0;border:none;border-radius:8px;flex:none;justify-content:center;align-items:center;display:flex}.item-details-dialog .portion-remove:hover{color:var(--vscode-danger);background:var(--accent-hover)}.item-details-dialog .expiration-portions-footer{justify-content:space-between;align-items:center;gap:12px;display:flex}.item-details-dialog .portion-add{color:var(--vscode-accent);cursor:pointer;background:0 0;border:none;padding:0;font-size:13px;font-weight:600}.item-details-dialog .portion-add:hover{text-decoration:underline}.item-details-dialog .portion-tally{font-variant-numeric:tabular-nums}.item-details-dialog .portion-tally.is-off{color:var(--vscode-warning)}.item-details-dialog .price-mode-tab{color:var(--vscode-muted);cursor:pointer;background:0 0;border:none;border-radius:999px;padding:5px 14px;font-size:12px;font-weight:600}.item-details-dialog .price-mode-tab.is-active{background:var(--vscode-accent);color:#fff}.item-details-dialog .price-mode-tab:not(.is-active):hover{color:var(--vscode-text)}.item-details-dialog .price-hint{color:var(--vscode-muted);font-variant-numeric:tabular-nums;font-size:12px}.item-details-dialog .item-details-error{border:1px solid var(--vscode-border);background:var(--accent-hover);color:var(--vscode-text);border-radius:8px;margin:0;padding:10px 12px;font-size:13px}.item-details-dialog .collection-skip{color:var(--vscode-muted);cursor:pointer;align-items:center;gap:8px;font-size:13px;display:flex}.item-details-dialog .dialog-footer{justify-content:flex-end;align-items:center;gap:10px;display:flex}.item-details-dialog .primary-button{color:#fff;border:1px solid var(--vscode-accent);background:var(--vscode-accent);box-shadow:0 4px 12px var(--accent-glow);cursor:pointer;border-radius:999px;padding:.5rem 1.25rem;font-size:.85rem;font-weight:600}.item-details-dialog .primary-button:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.item-details-dialog .ghost-button{color:var(--vscode-muted);cursor:pointer;background:0 0;border:none;padding:.5rem 1rem;font-size:.85rem;font-weight:600}.item-details-dialog .ghost-button:hover{color:var(--vscode-text)}.item-details-dialog .ghost-button:disabled{opacity:.5;cursor:not-allowed}.item-details-dialog .complete-trip-message{color:var(--vscode-text);margin:0 0 6px;font-size:15px}.item-details-dialog .complete-trip-note{color:var(--vscode-muted);margin:0;font-size:13px}.off-import-dialog .p-dialog-content{padding:0}.off-tabs{border-bottom:1px solid var(--vscode-border);background:var(--vscode-panel);display:flex}.off-tab{color:var(--vscode-muted);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;border-radius:0;padding:10px 18px;font-family:inherit;font-size:13px;transition:color .12s,border-color .12s}.off-tab:hover{color:var(--vscode-text);border-color:#0000}.off-tab.is-active{color:var(--vscode-accent);border-bottom-color:var(--vscode-accent);background:#007acc0f}.off-panel{flex-direction:column;gap:12px;min-height:120px;padding:16px;display:flex}.off-search-input{border:1px solid var(--vscode-border);background:var(--vscode-panel);width:100%;color:var(--vscode-text);border-radius:8px;font-family:inherit;font-size:13px}.off-search-input:focus{border-color:var(--vscode-accent);box-shadow:0 0 0 1px #007acc59}.off-status{color:var(--vscode-muted);margin:0;font-size:13px}.off-error{color:#ff6b6b;background:#e811231f;border:1px solid #e8112366;border-radius:8px;margin:0;padding:10px 12px;font-size:13px}.off-results{flex-direction:column;gap:8px;max-height:360px;display:flex;overflow-y:auto}.off-result{border:1px solid var(--vscode-border);background:#ffffff05;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;transition:border-color .12s,background-color .12s;display:flex}.off-result:hover{background:#007acc0a;border-color:#007acc66}.off-result .primary-button{border:1px solid var(--vscode-accent);background:var(--vscode-accent);color:#fff;cursor:pointer;border-radius:6px;flex-shrink:0;padding:6px 12px;font-family:inherit;font-size:12px;transition:background-color .12s}.off-result .primary-button:hover:not(:disabled){background:#1ea3ff}.off-result .primary-button:disabled{opacity:.6;cursor:not-allowed}.off-result-info{flex-direction:column;gap:4px;min-width:0;display:flex}.off-result-name{color:#f3f3f3;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;overflow:hidden}.off-result-meta{color:var(--vscode-muted);font-size:11px}.off-result-serving{opacity:.7}.off-result-local{border-color:var(--vscode-success);background:#22c55e0d}.off-in-library{color:var(--vscode-success);border:1px solid var(--vscode-success);white-space:nowrap;border-radius:6px;flex-shrink:0;padding:4px 8px;font-size:11px}.off-scan-again{border:1px solid var(--vscode-border);color:var(--vscode-text);cursor:pointer;background:#ffffff0a;border-radius:6px;align-self:flex-start;padding:6px 10px;font-family:inherit;font-size:12px}.off-scan-again:hover{border-color:var(--vscode-accent);color:#fff}.barcode-scanner{flex-direction:column;gap:16px;display:flex}.barcode-camera-view{border:1px solid var(--vscode-border);aspect-ratio:4/3;background:#000;border-radius:10px;position:relative;overflow:hidden}.barcode-video{object-fit:cover;width:100%;height:100%;display:block}.barcode-scan-overlay{pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.barcode-scan-target{border:2px solid var(--vscode-accent);border-radius:8px;width:60%;height:30%;box-shadow:0 0 0 9999px #00000073}.barcode-hint{text-align:center;color:#ffffffbf;margin:0;font-size:12px;position:absolute;bottom:10px;left:0;right:0}.barcode-unsupported{border:1px dashed var(--vscode-border);color:var(--vscode-muted);text-align:center;border-radius:8px;margin:0;padding:14px;font-size:13px}.barcode-manual-form{flex-direction:column;gap:8px;display:flex}.barcode-manual-label{color:var(--vscode-muted);text-transform:uppercase;letter-spacing:.4px;font-size:12px}.barcode-manual-row{gap:8px;display:flex}.barcode-manual-row .primary-button{border:1px solid var(--vscode-accent);background:var(--vscode-accent);color:#fff;cursor:pointer;border-radius:8px;flex-shrink:0;padding:8px 14px;font-family:inherit;font-size:13px}.barcode-manual-row .primary-button:hover:not(:disabled){background:#1ea3ff}.barcode-manual-row .primary-button:disabled{opacity:.5;cursor:not-allowed}.barcode-manual-input{flex:1;font-family:inherit;font-size:13px}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text-color);background-color:var(--vscode-bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-weight:400;line-height:1.5}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}body{background-color:var(--vscode-bg);min-width:320px;min-height:100vh;margin:0;padding:0}.app-shell,.marketing-shell{flex-direction:column;min-height:100vh;display:flex}.marketing-shell>main{flex:1}.page-content{box-sizing:border-box;flex:1;width:100%;max-width:1200px;margin:0 auto;padding:32px 40px}a{color:var(--vscode-accent);-webkit-text-decoration:inherit;text-decoration:inherit;font-weight:500}a:hover{color:var(--vscode-accent-deep)}button{background-color:var(--vscode-panel);cursor:pointer;border:1px solid #0000;border-radius:8px;padding:.6em 1.2em;font-family:inherit;font-size:1em;font-weight:500;transition:border-color .25s}button:hover{border-color:var(--vscode-accent)}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}.p-toast-icon-close{color:inherit;background:0 0;border:none;padding:0}.p-toast-icon-close:hover{border-color:#0000}@media (max-width:720px){.page-content{padding:16px}}.text-input,.text-area{border:1px solid var(--surface-border);border-radius:var(--border-radius);background:var(--surface-a);color:var(--text-color);padding:10px 12px;font-size:14px;transition:border-color .12s,box-shadow .12s,background-color .12s}.text-input::placeholder,.text-area::placeholder{color:var(--text-color-secondary)}.text-input:focus,.text-area:focus{border-color:var(--primary-color);background:var(--accent-hover);box-shadow:var(--focus-ring);outline:none}.text-area{resize:vertical;min-height:140px}.radio-group{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.radio-option{border:1px solid var(--surface-border);color:var(--text-color-secondary);cursor:pointer;background:0 0;border-radius:8px;align-items:center;gap:8px;padding:10px 12px;transition:border-color .12s,box-shadow .12s,background-color .12s,color .12s;display:inline-flex;position:relative}.radio-option:hover{border-color:var(--primary-color);color:var(--text-color)}.radio-option.is-active{border-color:var(--primary-color);color:var(--text-color);background:var(--accent-hover);box-shadow:0 6px 18px var(--accent-glow)}.radio-option.is-active .radio-dot{border-color:var(--primary-color);background:var(--primary-color)}.radio-input{opacity:0;pointer-events:none;position:absolute}.radio-dot{border:2px solid var(--text-color-secondary);border-radius:50%;width:8px;height:8px;transition:border-color .12s,background-color .12s}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}