:root{--color-primary:#a55222;--color-on-primary:#fff;--color-on-primary-dark:#fff;--color-primary-dark:#8c4420;--color-primary-light:#d4956e;--color-primary-pale:#eeded2;--color-bg-main:#f5f3ed;--color-bg-card:#fefdfb;--color-bg-elevated:#ede9e0;--color-bg-header:#1c1c1c;--color-bg-secondary:#0000000a;--color-text-primary:#1c1c1c;--color-text-secondary:#5a564e;--color-text-muted:#6b655c;--color-text-inverse:#f5f3ed;--color-border:#d6d0c5;--color-border-light:#e6e1d8;--color-success:#5a8a5c;--color-success-bg:#e5ede5;--color-warning:#c4930a;--color-warning-text:#866300;--color-warning-bg:#f5eedd;--color-error:#b5403a;--color-error-bg:#f5e8e7;--color-info:#4a7a9a;--color-info-bg:#e8f0f5;--space-xs:.25rem;--space-sm:.5rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2rem;--radius-sm:2px;--radius-md:4px;--radius-lg:6px;--radius-xl:8px;--shadow-sm:0 1px 2px #0000000f;--shadow-md:0 2px 8px #00000014;--shadow-lg:0 4px 16px #0000001a;--transition-fast:.12s ease;--transition-normal:.2s ease;--transition-slow:.3s ease}[data-theme=dark]{--color-bg-main:#131210;--color-bg-card:#222019;--color-bg-elevated:#2c2a22;--color-bg-header:#0e0e0c;--color-bg-secondary:#ffffff0d;--color-text-primary:#ebe8e2;--color-text-secondary:#b5b0a5;--color-text-muted:#aaa397;--color-text-inverse:#131210;--color-border:#3d3930;--color-border-light:#322e26;--color-primary:#d4956e;--color-primary-dark:#e0a27a;--color-on-primary-dark:#131210;--color-on-primary:#131210;--color-primary-light:#eeded2;--color-primary-pale:#2e2620;--color-success-bg:#1a2a1a;--color-warning-bg:#2a2510;--color-warning-text:#e0b13a;--color-error-bg:#2a1a18;--color-error:#e5837a;--color-info-bg:#1a2530;--shadow-sm:0 1px 2px #00000040;--shadow-md:0 2px 8px #00000059;--shadow-lg:0 4px 16px #00000073}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box;margin:0;padding:0}html,body{overflow-x:hidden}.app-container{background:var(--color-bg-main);min-height:100vh;color:var(--color-text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;flex-direction:column;font-family:Jost,sans-serif;transition:background .3s,color .3s;display:flex}:focus-visible{box-shadow:0 0 0 2px var(--color-primary-pale), 0 0 0 3px var(--color-primary);outline:none}input:focus-visible{box-shadow:none;border-color:var(--color-primary-dark)}textarea:focus-visible{box-shadow:none;border-color:var(--color-primary-dark)}select:focus-visible{box-shadow:none;border-color:var(--color-primary-dark)}.app-header{background:var(--color-bg-header);color:#f5f3ed;text-align:center;border-bottom:2px solid var(--color-primary);padding:1.25rem 1rem;transition:background .3s}.app-brand{letter-spacing:.25em;text-transform:uppercase;cursor:pointer;color:#f5f3ed;background:0 0;border:0;min-height:44px;font-family:inherit;font-size:1.5rem;font-weight:300}.app-main{flex:1;width:100%;max-width:600px;margin:0 auto;padding:1.5rem}.app-footer{background:var(--color-bg-header);text-align:center;letter-spacing:.2em;text-transform:uppercase;color:#ffffff80;border-top:2px solid var(--color-primary);flex-direction:column;align-items:center;gap:.75rem;padding:1rem;font-size:.65rem;transition:background .3s;display:flex}button{cursor:pointer;transition:all var(--transition-fast);border:none;font-family:inherit}.back-btn{color:var(--color-primary);cursor:pointer;padding:var(--space-sm) 0;margin-bottom:var(--space-md);letter-spacing:.08em;text-transform:uppercase;background:0 0;border:none;font-family:inherit;font-size:.85rem;font-weight:400}.search-box{margin-bottom:var(--space-md);position:relative}.search-box input{border:1.5px solid var(--color-border);background:var(--color-bg-card);width:100%;color:var(--color-text-primary);border-radius:var(--radius-sm);padding:.75rem 1rem;font-family:inherit;font-size:.95rem;transition:border-color .2s,background .3s}.search-box input:focus{border-color:var(--color-primary);outline:none}.clear-search{background:var(--color-border);border-radius:var(--radius-sm);cursor:pointer;width:22px;height:22px;color:var(--color-text-secondary);border:none;font-size:.9rem;position:absolute;top:50%;right:.75rem;transform:translateY(-50%)}.detail-view h2{letter-spacing:.05em;text-transform:uppercase;color:var(--color-text-primary);margin-bottom:var(--space-md);font-size:1.25rem;font-weight:600}.detail-header{align-items:center;gap:var(--space-md);margin-bottom:var(--space-lg);display:flex}.info-box{background:var(--color-bg-card);margin-bottom:var(--space-md);border:1px solid var(--color-border);padding:1rem}.info-box h3{letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-secondary);margin-bottom:.5rem;font-size:.8rem}.info-box.warning{background:var(--color-bg-elevated);border:1px solid var(--color-primary-pale)}.info-box.nutrition-info{background:var(--color-bg-main);border:1px solid var(--color-primary-light)}.info-box.nutrition-info .nutrition-grid{gap:var(--space-sm);grid-template-columns:repeat(4,1fr);margin-top:.5rem;display:grid}.info-box.nutrition-info .nutrition-card{background:var(--color-bg-card);text-align:center;border-radius:var(--radius-sm);border:1px solid var(--color-border);padding:.75rem .5rem}.info-box.nutrition-info .nutrition-value{color:var(--color-text-secondary);font-size:1.2rem;font-weight:600;display:block}.info-box.nutrition-info .nutrition-label{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;margin-top:.25rem;font-size:.65rem;display:block}@media (max-width:400px){.info-box.nutrition-info .nutrition-grid{grid-template-columns:repeat(2,1fr)}}.result-box{background:var(--color-primary-pale);border-left:3px solid var(--color-primary);margin-top:var(--space-md);flex-wrap:wrap;justify-content:center;align-items:center;gap:.75rem;padding:1.25rem;display:flex}.result-value{color:var(--color-primary-dark);font-variant-numeric:tabular-nums;font-family:DM Mono,monospace;font-size:1.3rem;font-weight:500}.result-equals{color:var(--color-primary-dark)}.result-value.highlight{color:var(--color-primary-dark);font-size:1.6rem}.guide-wrapper{padding:0 var(--space-md)}.guide-content{gap:var(--space-xl);flex-direction:column;display:flex}.guide-section{gap:var(--space-sm);flex-direction:column;display:flex}.guide-section h2{color:var(--color-text-primary);margin-bottom:.25rem;font-size:1.25rem}.section-description{color:var(--color-text-secondary);margin-bottom:var(--space-lg);font-size:.95rem;line-height:1.5}.recipe-share-section{border-top:1px solid var(--color-border);margin-top:1.5rem;padding-top:1rem}.recipe-share-section h3{color:var(--color-text-secondary);margin-bottom:.75rem;font-size:.9rem}.share-buttons{gap:var(--space-sm);flex-wrap:wrap;display:flex}.share-btn{background:var(--color-bg-elevated);border:1px solid var(--color-primary-light);border-radius:var(--radius-sm);color:var(--color-text-secondary);cursor:pointer;padding:.6rem 1rem;font-size:.85rem;transition:all .15s}.share-btn:hover{background:var(--color-primary);color:var(--color-on-primary);border-color:var(--color-primary)}[data-theme=dark] .temp-card.medium{background:var(--color-primary);color:var(--color-on-primary)}[data-theme=dark] .temp-card.medium .temp-label,[data-theme=dark] .temp-card.medium .temp-value,[data-theme=dark] .rice-result-item.highlight .rice-result-label,[data-theme=dark] .rice-result-item.highlight .rice-result-value{color:var(--color-on-primary)}[data-theme=dark] .doneness-btn.active.medium{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-on-primary)}[data-theme=dark] input,[data-theme=dark] select,[data-theme=dark] textarea{background-color:var(--color-bg-elevated);color:var(--color-text-primary);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}[data-theme=dark] input::placeholder,[data-theme=dark] textarea::placeholder{color:var(--color-text-muted)}[data-theme=dark] .thickness-slider{background:var(--color-border)}.cross-link-btn{background:var(--color-bg-elevated);color:var(--color-primary);border:1px solid var(--color-border-light);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;align-items:center;gap:.35rem;padding:.3rem .65rem;font-size:.78rem;display:inline-flex}.cross-link-btn:hover{background:var(--color-primary);color:var(--color-on-primary);border-color:var(--color-primary)}.cross-link-btn .cross-link-arrow{opacity:.7;font-size:.7rem}.app-main:focus{box-shadow:none;outline:none}.sr-only,.skip-link:not(:focus){clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.skip-link:focus{z-index:100;color:var(--color-text-primary);background:var(--color-bg-card);padding:.75rem 1rem;position:fixed;top:.5rem;left:.5rem}.app-notice{border-left:3px solid var(--color-primary);background:var(--color-bg-elevated);max-width:60rem;color:var(--color-text-primary);margin:1rem auto;padding:1rem;line-height:1.6}button,input,select,textarea{font-family:inherit}button:disabled{cursor:not-allowed;opacity:.5}@media (max-width:600px){.app-main{padding:1rem}input,select,textarea{font-size:1rem!important}.form-row{flex-wrap:wrap}.form-row>*{min-width:0}}.workspace-actions{gap:var(--space-2,8px);flex-wrap:wrap;display:flex}.workspace-actions button{min-height:44px;padding:8px 12px}.storage-conflict h2{font-size:1rem}.storage-conflict pre{white-space:pre-wrap;overflow-wrap:anywhere;max-height:260px;font-family:DM Mono,monospace;font-size:.75rem;overflow:auto}.storage-conflict summary{cursor:pointer;padding:12px 0}.app-tools{box-sizing:border-box;width:100%;max-width:1100px;margin:0 auto;padding:0 1rem 1.5rem}.local-tools{border-top:1px solid var(--color-border);color:var(--color-text-secondary);padding:.5rem 0;font-size:.9rem}.local-tools>summary{box-sizing:border-box;cursor:pointer;min-height:44px;color:var(--color-text-primary);padding:.7rem 0;font-weight:500}.local-tools p{margin:.75rem 0;line-height:1.5}.workspace-actions button,.text-action{background:var(--color-bg-card);color:var(--color-text-primary);border:1px solid var(--color-border);border-radius:var(--radius-md);font:inherit;cursor:pointer}.workspace-actions button:disabled{opacity:.55;cursor:default}.local-data-row{border-bottom:1px solid var(--color-border-light);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;padding:.5rem 0;display:flex}.text-action{min-height:44px;padding:.5rem .75rem}.recovery-copy{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);margin:.5rem 0;padding:0 .75rem}.recovery-copy .workspace-actions{padding-bottom:.75rem}.offline-update{background:var(--color-primary-pale);border-radius:var(--radius-md);margin:.75rem 0;padding:.75rem}.source-notes{margin-top:var(--space-xl)}.source-notes h2{margin:1rem 0 .25rem;font-size:1rem}.source-status{color:var(--color-text-muted);font-size:.8rem}.source-notes a{color:var(--color-primary);text-underline-offset:3px;overflow-wrap:anywhere}.home-grid{gap:var(--space-xl);flex-direction:column;display:flex}.home-group-label{text-transform:uppercase;letter-spacing:.15em;color:var(--color-text-muted);margin-bottom:var(--space-xs);padding:0 .25rem;font-size:.7rem;font-weight:500}.home-group-cards{border:1px solid var(--color-border);background:var(--color-border);flex-direction:column;gap:1px;display:flex}.menu-card{background:var(--color-bg-card);width:100%;font:inherit;text-align:left;cursor:pointer;border:0;border-left:3px solid var(--color-primary);padding:1.1rem 2.8rem 1.1rem 1.25rem;transition:background .15s,border-color .15s,transform .2s ease-out;position:relative}.menu-card:hover{background:var(--color-bg-elevated);border-left-color:var(--color-primary-dark);transform:translate(2px)}.menu-card:active{transition-duration:50ms;transform:translate(1px)}.menu-title{letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-primary);margin-bottom:.2rem;font-size:.85rem;font-weight:500;display:block}.menu-description{color:var(--color-text-muted);font-size:.82rem;font-weight:400;display:block}.menu-arrow{color:var(--color-primary);font-size:1.2rem;font-weight:400;transition:transform .2s ease-out;position:absolute;top:50%;right:1.25rem;transform:translateY(-50%)}.menu-card:hover .menu-arrow{transform:translateY(-50%)translate(3px)}.favorites-section{border:1px solid var(--color-border);background:var(--color-bg-card);grid-column:1/-1;padding:20px}.favorites-section h2{margin:0 0 12px;font-size:1rem}.favorites-section p{color:var(--color-text-muted);margin:0}.favorites-list{margin:0;padding:0;list-style:none}.favorites-list li{border-top:1px solid var(--color-border);align-items:center;gap:12px;display:flex}.favorites-list a,.favorites-list li>span{overflow-wrap:anywhere;flex:1;padding:14px 0}.favorites-list button{flex-shrink:0;min-height:44px;padding:8px}@media print{.view-actions,.favorites-section{display:none}}.category-section{margin-bottom:var(--space-lg)}.category-title{background:var(--color-bg-elevated);letter-spacing:.18em;text-transform:uppercase;color:var(--color-text-primary);border-left:3px solid var(--color-primary);margin-bottom:0;padding:.6rem 1rem;font-size:.65rem;font-weight:500;transition:background .3s}.items-list{background:var(--color-bg-card);border:1px solid var(--color-border);border-top:none;transition:background .3s;overflow:hidden}.item-row{padding:var(--space-md);border-bottom:1px solid var(--color-border-light);cursor:pointer;align-items:center;transition:background .15s;display:flex}.item-row:last-child{border-bottom:none}.item-row:hover{background:var(--color-bg-elevated)}.item-name{color:var(--color-text-primary);flex:1;font-weight:500}.item-meta{color:var(--color-primary-dark);margin-right:.5rem;font-size:.875rem}.item-arrow{color:var(--color-primary-dark);font-size:1.25rem}.temp-grid{gap:var(--space-sm);margin-bottom:var(--space-lg);grid-template-columns:repeat(3,1fr);display:grid}.temp-card{background:var(--color-bg-card);text-align:center;padding:1rem}.temp-card.rare{background:var(--color-bg-elevated);border:1px solid var(--color-border)}.temp-card.medium{background:var(--color-primary);border:1px solid var(--color-primary);color:var(--color-on-primary)}.temp-card.welldone{background:var(--color-bg-header);border:1px solid var(--color-bg-header)}.temp-label{text-transform:uppercase;letter-spacing:.1em;margin-bottom:.25rem;font-size:.65rem;display:block}.temp-card.rare .temp-label,.temp-card.rare .temp-value{color:var(--color-text-primary)}.temp-card.medium .temp-label{color:#ffffffeb}.temp-card.medium .temp-value{color:#fff}.temp-card.welldone .temp-label{color:#ffffffb3}.temp-card.welldone .temp-value{color:#fff}.temp-value{font-family:DM Mono,monospace;font-size:1.25rem;font-weight:500}.rest-time-box{background:var(--color-bg-elevated);border-radius:var(--radius-md);padding:1rem 1.25rem}.rest-time-value{color:var(--color-primary-dark);margin:.5rem 0;font-family:DM Mono,monospace;font-size:1.5rem;font-weight:500}.rest-time-note{color:var(--color-text-secondary);margin-top:.5rem;font-size:.85rem}.saltning-box{background:var(--color-bg-elevated);border-radius:var(--radius-md);padding:1rem 1.25rem}.saltning-value{color:var(--color-primary-dark);margin:.5rem 0;font-size:1.5rem;font-weight:700}.saltning-note{color:var(--color-text-secondary);margin-top:.5rem;font-size:.85rem}.category-science{background:var(--color-bg-elevated);border-radius:var(--radius-sm);margin:.5rem 0 1rem;overflow:hidden}.science-summary{cursor:pointer;align-items:center;gap:var(--space-sm);color:var(--color-text-secondary);padding:.75rem 1rem;font-size:.9rem;font-weight:500;list-style:none;display:flex}.science-summary::-webkit-details-marker{display:none}.science-summary:after{content:"+";color:var(--color-primary-dark);margin-left:auto;font-size:1.2rem;transition:transform .2s ease-out}details[open] .science-summary:after{content:"−";transform:rotate(180deg)}.science-content{color:var(--color-text-primary);padding:0 1rem 1rem;font-size:.9rem;line-height:1.6}.science-content p{margin-bottom:.75rem}.science-tip{background:var(--color-bg-card);border-radius:var(--radius-sm);padding:.75rem;font-size:.85rem}.temp-top-tabs{margin-bottom:var(--space-md);border-bottom:2px solid var(--color-border);background:var(--color-bg-main);z-index:10;grid-template-columns:1fr 1fr;gap:0;padding-top:.5rem;display:grid;position:sticky;top:0}.temp-top-tabs button{cursor:pointer;letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-muted);white-space:nowrap;text-align:center;background:0 0;border:none;border-bottom:3px solid #0000;margin-bottom:-2px;padding:.7rem .5rem .75rem;font-size:.8rem;font-weight:500;transition:all .2s}.temp-top-tabs button.active{color:var(--color-text-primary);border-bottom-color:var(--color-primary);font-weight:600}.temp-top-tabs button:hover:not(.active){color:var(--color-text-secondary)}@media (max-width:480px){.temp-top-tabs button{letter-spacing:.03em;font-size:.72rem}}.temp-sub-tabs{margin-bottom:var(--space-md);border-bottom:1px solid var(--color-border);-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:1.25rem;padding-bottom:0;display:flex;overflow-x:auto}.temp-sub-tabs::-webkit-scrollbar{display:none}.temp-sub-tabs button{cursor:pointer;letter-spacing:.04em;color:var(--color-text-muted);background:0 0;border:none;border-bottom:2px solid #0000;flex-shrink:0;margin-bottom:-1px;padding:.55rem .25rem .65rem;font-size:.82rem;font-weight:400;transition:all .2s}.temp-sub-tabs button.active{color:var(--color-primary);border-bottom-color:var(--color-primary);font-weight:500}.temp-sub-tabs button:hover:not(.active){color:var(--color-text-secondary)}.temp-sub-tabs--scroll{-webkit-overflow-scrolling:touch;scrollbar-width:none;overflow-x:auto}.temp-sub-tabs--scroll::-webkit-scrollbar{display:none}.temp-sub-tabs--scroll button{white-space:nowrap;flex-shrink:0}.foreign-toggle{margin-bottom:var(--space-lg);cursor:pointer;align-items:center;gap:.75rem;display:flex}.foreign-toggle input{width:20px;height:20px;accent-color:var(--color-primary-dark)}.converter-box{background:var(--color-bg-card);border:1px solid var(--color-border);margin-bottom:2rem;padding:1.5rem}.converter-row{margin-bottom:var(--space-md)}.value-input{border:2px solid var(--color-border);text-align:center;width:100%;margin-bottom:var(--space-md);background:var(--color-bg-main);color:var(--color-text-primary);padding:1rem;font-family:DM Mono,monospace;font-size:1.5rem;font-weight:500}.value-input:focus{border-color:var(--color-primary-dark);outline:none}.unit-selector{gap:var(--space-sm);flex-wrap:wrap;justify-content:center;display:flex}.unit-selector button{padding:var(--space-sm) var(--space-md);border:1.5px solid var(--color-border);background:var(--color-bg-card);cursor:pointer;transition:all var(--transition-fast);border-radius:var(--radius-sm);color:var(--color-text-primary);letter-spacing:.02em;font-family:inherit;font-weight:400}.unit-selector button.active{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-on-primary)}.unit-selector button:hover:not(.active){border-color:var(--color-primary-light)}.converter-arrow{text-align:center;color:var(--color-text-secondary);letter-spacing:.1em;margin:1rem 0;font-weight:500}.ingredient-name{color:var(--color-text-primary);font-weight:500}.recent-conversions{margin-bottom:var(--space-md);background:var(--color-bg-elevated);padding:1rem}.recent-conversions h4{letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-secondary);margin-bottom:.5rem;font-size:.75rem}.recent-tags{gap:var(--space-sm);flex-wrap:wrap;display:flex}.recent-tag{background:var(--color-bg-card);border:1px solid var(--color-border);cursor:pointer;padding:.4rem .75rem;font-size:.875rem;transition:all .15s}.recent-tag:hover{border-color:var(--color-primary-dark);background:var(--color-bg-main)}.ingredient-converter{background:var(--color-bg-card);border:1px solid var(--color-border);padding:1.5rem}.selected-ingredient-header{justify-content:space-between;align-items:center;margin-bottom:.5rem;display:flex}.selected-ingredient-header h3{letter-spacing:.05em;text-transform:uppercase;color:var(--color-text-primary);margin:0;font-size:1rem;font-weight:600}.change-ingredient-btn{background:var(--color-bg-elevated);color:var(--color-primary-dark);cursor:pointer;border:none;padding:.4rem .75rem;font-size:.8rem}.ingredient-info{color:var(--color-text-secondary);margin-bottom:var(--space-md);font-size:.9rem}.direction-selector{background:var(--color-border);margin-bottom:var(--space-md);padding:3px;display:flex}.direction-selector button{cursor:pointer;background:0 0;border:none;flex:1;padding:.6rem;font-family:inherit;font-size:.875rem;transition:all .2s}.direction-selector button.active{background:var(--color-bg-elevated);color:var(--color-primary-dark);font-weight:600}.static-unit{text-align:center;color:var(--color-primary-dark);padding:.75rem;font-weight:600;display:block}.large-result{padding:1.5rem}.save-recent-btn{width:100%;margin-top:var(--space-md);background:var(--color-bg-elevated);border:1px solid var(--color-border);cursor:pointer;letter-spacing:.05em;padding:.75rem;font-size:.9rem;transition:all .2s}.save-recent-btn:hover{border-color:var(--color-primary-dark)}.ingredient-list-grouped{flex-direction:column;gap:1.25rem;display:flex}.ingredient-category{background:var(--color-bg-card);border:1px solid var(--color-border);padding:1rem}.category-header{color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.15em;margin-bottom:.75rem;font-size:.7rem;font-weight:600}.ingredient-buttons{gap:var(--space-sm);flex-wrap:wrap;display:flex}.ingredient-btn{background:var(--color-bg-main);border:1px solid var(--color-border);cursor:pointer;flex-direction:column;align-items:flex-start;padding:.6rem .9rem;transition:all .15s;display:flex}.ingredient-btn:hover{border-color:var(--color-primary-dark);background:var(--color-bg-elevated)}.ingredient-btn .ing-name{color:var(--color-text-primary);font-size:.9rem;font-weight:500}.ingredient-btn .ing-gpdl{color:var(--color-primary-dark);font-size:.75rem}.egg-converter{gap:var(--space-md);flex-direction:column;display:flex}.egg-info-box{background:var(--color-bg-elevated);border:1px solid var(--color-primary-pale);padding:1rem}.egg-info-box p{color:var(--color-text-secondary);margin:0;font-size:.9rem}.egg-sizes-reference{background:var(--color-bg-card);border:1px solid var(--color-border);padding:1rem}.egg-sizes-reference h4{letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-secondary);margin-bottom:.75rem;font-size:.75rem}.egg-size-cards{gap:var(--space-sm);grid-template-columns:repeat(4,1fr);display:grid}.egg-size-card{background:var(--color-bg-elevated);flex-direction:column;align-items:center;padding:.75rem .5rem;display:flex}.egg-size-label{color:var(--color-text-primary);font-size:1.25rem;font-weight:700}.egg-size-weight{color:var(--color-primary-dark);font-size:.8rem}.egg-converter-box{background:var(--color-bg-card);border:1px solid var(--color-border);padding:1.5rem}.egg-input-row{align-items:center;gap:var(--space-md);flex-wrap:wrap;margin-bottom:.5rem;display:flex}.egg-input-row label{color:var(--color-text-primary);min-width:100px;font-weight:500}.egg-input-group{align-items:center;gap:var(--space-sm);display:flex}.egg-count-input{border:2px solid var(--color-border);text-align:center;width:60px;padding:.6rem;font-family:inherit;font-size:1.1rem}.egg-count-input:focus{border-color:var(--color-primary-dark);outline:none}.egg-size-select{border:2px solid var(--color-border);background:var(--color-bg-card);cursor:pointer;padding:.6rem .75rem;font-family:inherit;font-size:1rem}.egg-size-select:focus{border-color:var(--color-primary-dark);outline:none}.egg-result{gap:var(--space-sm);margin-top:var(--space-md);flex-direction:column}.egg-result-main{align-items:center;gap:var(--space-sm);display:flex}.result-label{color:var(--color-text-secondary)}.egg-result-detail{color:var(--color-text-secondary);font-size:.875rem}.egg-tip{background:var(--color-bg-elevated);color:var(--color-text-secondary);margin-top:.5rem;padding:.5rem .75rem;font-size:.85rem}.egg-tips{background:var(--color-bg-card);border:1px solid var(--color-border);padding:1rem}.egg-tips h4{letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-secondary);margin-bottom:.75rem;font-size:.75rem}.egg-tips ul{margin:0;padding-left:1.25rem}.egg-tips li{color:var(--color-text-secondary);margin-bottom:.4rem;font-size:.9rem}.baking-schedule-box{background:var(--color-bg-elevated);border-radius:var(--radius-md);margin-top:1rem;padding:1rem 1.25rem}.baking-schedule-box h4{text-transform:uppercase;letter-spacing:.05em;color:var(--color-primary-dark);margin:0 0 .5rem;font-size:.85rem}.baking-schedule-box p{margin:0 0 .25rem;font-size:.95rem}.baking-time-info{color:var(--color-text-secondary);margin-top:.25rem!important;font-size:.82rem!important}.baking-techniques-mini{background:var(--color-bg-elevated);border-radius:var(--radius-md);margin-top:1rem;padding:1rem 1.25rem}.baking-techniques-mini h4{color:var(--color-text-primary);margin:0 0 .75rem;font-size:.9rem}.baking-steps-list{flex-direction:column;gap:.45rem;margin:0;padding-left:1.2rem;display:flex}.baking-steps-list li{color:var(--color-text-secondary);font-size:.88rem;line-height:1.45}.baking-tips-list{background:var(--color-bg-elevated);border-radius:var(--radius-md);margin-top:1rem;padding:1rem 1.25rem}.baking-tips-list h4{color:var(--color-text-primary);margin:0 0 .6rem;font-size:.9rem}.baking-tips-list ul{flex-direction:column;gap:.4rem;margin:0;padding-left:1.2rem;display:flex}.baking-tips-list li{color:var(--color-text-secondary);font-size:.88rem;line-height:1.4}.baking-bread-selector{flex-direction:column;gap:.6rem;display:flex}.baking-bread-btn{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;text-align:left;justify-content:space-between;align-items:center;padding:.85rem 1rem;transition:border-color .15s,background .15s;display:flex}.baking-bread-btn:hover{border-color:var(--color-primary)}.baking-bread-btn.active{border-color:var(--color-primary);background:var(--color-primary-light,#4caf5014)}.baking-bread-name{color:var(--color-text-primary);font-size:.95rem;font-weight:600}.baking-bread-type{color:var(--color-text-secondary);background:var(--color-bg-secondary,#0000000f);border-radius:var(--radius-lg);padding:.2rem .55rem;font-size:.78rem}.levain-days-grid{flex-direction:column;gap:.5rem;display:flex}.levain-day-card{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;padding:.85rem 1rem;transition:border-color .15s}.levain-day-card:hover,.levain-day-card.active{border-color:var(--color-primary)}.levain-day-header{align-items:center;gap:.75rem;display:flex}.levain-day-number{color:var(--color-primary-dark);min-width:38px;font-size:.85rem;font-weight:700}.levain-day-title{color:var(--color-text-primary);font-size:.95rem;font-weight:600}.levain-day-body{flex-direction:column;gap:.6rem;margin-top:.85rem;display:flex}.levain-time-block{background:var(--color-bg-secondary,#0000000a);border-radius:var(--radius-md);padding:.65rem .85rem}.levain-time-label{color:var(--color-text-secondary);margin-bottom:.25rem;font-size:.78rem;font-weight:600;display:block}.levain-time-block p{color:var(--color-text-primary);margin:0;font-size:.88rem;line-height:1.45}.levain-expect{color:var(--color-text-secondary);padding:.5rem .2rem;font-size:.84rem;font-style:italic}.baking-equipment-box{background:var(--color-bg-elevated);border-radius:var(--radius-md);margin-bottom:.5rem;padding:.85rem 1.1rem}.baking-equipment-box h4{text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary);margin:0 0 .5rem;font-size:.85rem}.baking-equipment-list{flex-direction:column;gap:.3rem;margin:0;padding-left:1.2rem;display:flex}.baking-equipment-list li{color:var(--color-text-primary);font-size:.88rem}.baking-techniques-grid{flex-direction:column;gap:.75rem;display:flex}.baking-technique-card{background:var(--color-bg-elevated);border-radius:var(--radius-md);padding:.85rem 1.1rem}.baking-technique-name{color:var(--color-text-primary);margin:0 0 .35rem;font-size:.95rem}.baking-technique-desc{color:var(--color-text-secondary);margin:0;font-size:.86rem;line-height:1.45}.baking-focaccia-dough{color:var(--color-text-secondary);margin:0 0 1.2rem;font-size:.88rem}.baking-focaccia-cols{grid-template-columns:1fr 2fr;gap:1.5rem;margin-bottom:1rem;display:grid}@media (max-width:600px){.baking-focaccia-cols{grid-template-columns:1fr}}.baking-focaccia-ingredients h4,.baking-focaccia-steps-col h4{text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary);margin:0 0 .6rem;font-size:.9rem}.baking-focaccia-ing-list{margin:0;padding:0;list-style:none}.baking-focaccia-ing-list li{border-bottom:1px solid var(--color-border);justify-content:space-between;gap:.5rem;padding:.35rem 0;font-size:.9rem;display:flex}.baking-focaccia-ing-list li:last-child{border-bottom:none}.ing-name{color:var(--color-text-primary)}.ing-amount{color:var(--color-text-secondary);white-space:nowrap}.rice-calculator{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);margin-bottom:var(--space-lg);padding:1.25rem}.rice-calc-row{gap:var(--space-sm);margin-bottom:var(--space-md);flex-direction:column;display:flex}.rice-calc-row:last-child{margin-bottom:0}.rice-calc-row label{color:var(--color-text-primary);font-size:.9rem;font-weight:600}.rice-calc-input-group{gap:var(--space-sm);max-width:100%;display:flex}.rice-calc-input{border:1px solid var(--color-border);border-radius:var(--radius-md);text-align:center;flex:1;min-width:0;padding:.75rem;font-size:1.1rem;font-weight:600}.rice-calc-input:focus{border-color:var(--color-primary);outline:none}.rice-calc-select{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-card);min-width:90px;padding:.75rem;font-size:.95rem}.rice-calc-select-full{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-card);width:100%;padding:.75rem;font-size:.95rem}.rice-result-card{background:var(--color-bg-elevated);border:2px solid var(--color-primary);border-radius:var(--radius-lg);margin-bottom:var(--space-lg);padding:1.25rem}.rice-result-card h3{color:var(--color-primary-dark);margin-bottom:var(--space-md);font-size:1.1rem}.rice-result-content,.rice-result-grid{flex-direction:column;gap:.75rem;display:flex}.rice-result-item{border-bottom:1px solid var(--color-border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.25rem;padding:.5rem 0;display:flex}.rice-result-item:last-child{border-bottom:none}.rice-result-item.highlight{background:var(--color-primary);border-radius:var(--radius-md);color:var(--color-on-primary);border-bottom:none;margin:0 -.75rem;padding:.875rem .75rem}.rice-result-item.highlight .rice-result-label,.rice-result-item.highlight .rice-result-value{color:#fff}.rice-result-item.special{background:var(--color-warning-bg);border-radius:var(--radius-md);border-bottom:none;margin:0 -.75rem .5rem;padding:.75rem}.rice-result-label{color:var(--color-text-secondary);flex-shrink:0;font-weight:500}.rice-result-value{color:var(--color-text-primary);font-variant-numeric:tabular-nums;font-family:DM Mono,monospace;font-size:1.1rem;font-weight:500}.rice-result-item.highlight .rice-result-value{font-size:1.25rem}.rice-method-cards{margin-bottom:var(--space-lg);flex-direction:column;gap:.75rem;display:flex}.rice-method-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);flex-direction:column;gap:.25rem;padding:1rem 1.25rem;display:flex}.rice-method-name{text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-secondary);font-size:.8rem;font-weight:600}.rice-method-time{color:var(--color-primary-dark);font-family:DM Mono,monospace;font-size:1.2rem;font-weight:500;line-height:1.3}.rice-method-details{color:var(--color-text-secondary);flex-wrap:wrap;gap:.25rem;margin-top:.25rem;font-size:.82rem;display:flex}.rice-method-sep{opacity:.4}.rice-method-effect{color:var(--color-text-secondary);margin:0;font-size:.85rem;line-height:1.45}.brine-slider-row{flex-direction:column;gap:.25rem;display:flex}.brine-slider{width:100%;accent-color:var(--color-primary);cursor:pointer}.brine-slider-labels{color:var(--color-text-secondary);justify-content:space-between;font-size:.8rem;display:flex}.brining-thresholds{flex-direction:column;gap:.75rem;margin-bottom:1rem;display:flex}.brining-threshold-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);flex-direction:column;gap:.25rem;padding:1rem 1.25rem;display:flex}.brining-threshold-level{color:var(--color-primary-dark);font-family:DM Mono,monospace;font-size:1.1rem;font-weight:500}.brining-threshold-effect{color:var(--color-text-secondary);font-size:.85rem;line-height:1.45}.egg-storage-section{border-top:1px solid var(--color-border);margin-top:1.5rem;padding-top:1rem}.egg-time-cards{margin-bottom:var(--space-lg);flex-direction:column;gap:.75rem;display:flex}.egg-time-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:1rem}.egg-time-card.warning{border-color:var(--color-error);background:var(--color-error-bg)}.egg-time-header{justify-content:space-between;align-items:center;margin-bottom:.5rem;display:flex}.egg-time-name{color:var(--color-text-primary);font-weight:600}.egg-time-value{color:var(--color-primary-dark);font-family:DM Mono,monospace;font-size:1.25rem;font-weight:500}.egg-time-card.warning .egg-time-value{color:var(--color-error)}.egg-time-desc{color:var(--color-text-secondary);margin-bottom:.25rem;font-size:.9rem}.egg-time-temp{color:var(--color-text-secondary);font-size:.8rem}.egg-tips-section{background:var(--color-bg-elevated);border-radius:var(--radius-sm);padding:1rem}.egg-tips-section h3{text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary);margin-bottom:.75rem;font-size:.9rem}.egg-tips-section ul{margin:0;padding-left:1.25rem}.egg-tips-section li{margin-bottom:.5rem;font-size:.9rem;line-height:1.4}.steps-list-guide{margin-bottom:var(--space-lg)}.steps-list-guide h3{text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary);margin-bottom:.75rem;font-size:.9rem}.steps-list-guide ol{margin:0;padding-left:1.5rem}.steps-list-guide li{margin-bottom:.75rem;padding-left:.5rem;font-size:.95rem;line-height:1.5}.scrambled-styles{gap:var(--space-md);flex-direction:column;display:flex}.puree-summary{opacity:.8;font-size:.9rem;line-height:1.5}.scrambled-style-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:1rem}.scrambled-style-card h3,.puree-title{color:var(--color-text-primary);margin-bottom:.5rem;font-size:1rem}.style-method{color:var(--color-primary-dark);margin-bottom:.75rem;font-size:.95rem;font-weight:500}.scrambled-style-card ul{margin:0;padding-left:1.25rem}.scrambled-style-card li{margin-bottom:.25rem;font-size:.9rem}.science-facts{margin-bottom:var(--space-lg);grid-template-columns:repeat(2,1fr);gap:.75rem;display:grid}.science-fact-card{background:var(--color-bg-card);border:1px solid var(--color-border);text-align:center;border-radius:var(--radius-sm);padding:.75rem}.fact-label{color:var(--color-text-secondary);margin-bottom:.25rem;font-size:.8rem;display:block}.fact-value{color:var(--color-primary-dark);font-size:1.1rem;font-weight:700;display:block}.science-explanation{background:var(--color-bg-elevated);border-radius:var(--radius-sm);padding:1rem;font-size:.95rem;line-height:1.6}.fermentation-view{padding-bottom:2rem}.fermentation-intro{color:var(--color-text-secondary);margin-bottom:var(--space-lg);line-height:1.6}.ferment-category-header{margin-bottom:var(--space-lg)}.ferment-category-header h2{margin-bottom:.5rem;font-size:1.3rem}.ferment-category-header p{color:var(--color-text-secondary);line-height:1.5}.ferment-basics{background:var(--color-bg-elevated);border-radius:var(--radius-md);margin-bottom:var(--space-lg);padding:1rem}.ferment-basics h3{text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary);margin-bottom:.75rem;font-size:.9rem}.basics-grid{grid-template-columns:repeat(2,1fr);gap:.75rem;display:grid}.basic-item{background:var(--color-bg-card);border-radius:var(--radius-sm);padding:.75rem}.basic-label{color:var(--color-text-secondary);margin-bottom:.25rem;font-size:.8rem;display:block}.basic-value{color:var(--color-text-primary);font-size:.9rem;font-weight:500}.ferment-recipes h3{text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary);margin-bottom:.75rem;font-size:.9rem}.recipes-grid{flex-direction:column;gap:.75rem;display:flex}.ferment-recipe-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;padding:1rem;transition:all .2s}.ferment-recipe-card:hover{background:var(--color-bg-elevated);border-color:var(--color-primary)}.ferment-recipe-card h4,.ferment-recipe-name{color:var(--color-text-primary);margin-bottom:.25rem;font-size:1rem}.ferment-recipe-card p,.ferment-recipe-desc{color:var(--color-text-secondary);margin-bottom:.5rem;font-size:.85rem}.recipe-card-meta{gap:var(--space-md);color:var(--color-text-secondary);font-size:.8rem;display:flex}.ferment-recipe-detail{animation:.2s fadeIn}.back-link{color:var(--color-primary-dark);cursor:pointer;margin-bottom:var(--space-md);background:0 0;border:none;padding:0;font-size:.9rem;display:block}.ferment-recipe-detail h2{margin-bottom:.5rem;font-size:1.5rem}.recipe-meta{gap:var(--space-md);margin-bottom:var(--space-lg);flex-wrap:wrap;display:flex}.meta-item{background:var(--color-bg-elevated);border-radius:var(--radius-xl);padding:.5rem .75rem;font-size:.85rem}.recipe-ingredients,.recipe-steps{margin-bottom:var(--space-lg)}.recipe-ingredients h3,.recipe-steps h3,.recipe-tips h3{color:var(--color-text-primary);margin-bottom:.75rem;font-size:1rem}.recipe-ingredients ul{margin:0;padding-left:1.25rem}.recipe-ingredients li{margin-bottom:.4rem;line-height:1.4}.recipe-steps ol{padding-left:1.25rem}.recipe-steps li{margin-bottom:.75rem;padding-left:.5rem;line-height:1.5}.recipe-tips{background:var(--color-bg-elevated);border-radius:var(--radius-md);padding:1rem}.recipe-tips ul{margin:0;padding-left:1.25rem}.recipe-tips li{margin-bottom:.5rem;line-height:1.4}.ferment-safety{border-top:1px solid var(--color-border);margin-top:2rem;padding-top:1.5rem}.ferment-safety h3{margin-bottom:var(--space-md);color:var(--color-warning-text);font-size:1rem}.safety-item{background:var(--color-warning-bg);border:1px solid var(--color-warning);border-left:3px solid var(--color-warning);border-radius:var(--radius-sm);margin-bottom:.75rem;padding:1rem}.safety-item strong{color:var(--color-text-primary);letter-spacing:.02em;margin-bottom:.25rem;font-size:.9rem;display:block}.safety-item p{color:var(--color-text-secondary);margin:0;font-size:.88rem;line-height:1.5}.ferment-troubleshooting{border-top:1px solid var(--color-border);margin-top:2rem;padding-top:1.5rem}.ferment-troubleshooting h3{margin-bottom:var(--space-md);font-size:1rem}.trouble-item{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);margin-bottom:.75rem;padding:1rem}.trouble-item strong{color:var(--color-primary-dark);margin-bottom:.25rem;display:block}.trouble-item p{color:var(--color-text-secondary);margin:0;font-size:.9rem;line-height:1.4}.ferment-science{border-top:1px solid var(--color-border);margin-top:1.5rem;padding-top:1.5rem}.ferment-science h3{margin-bottom:var(--space-md);font-size:1rem}.science-facts-grid{gap:var(--space-sm);margin-bottom:var(--space-md);grid-template-columns:repeat(2,1fr);display:grid}@media (min-width:480px){.science-facts-grid,.basics-grid{grid-template-columns:repeat(3,1fr)}}.blanchering-keys{margin-bottom:var(--space-lg)}.blanchering-keys h3{text-transform:uppercase;letter-spacing:.1em;color:var(--color-text-secondary);margin-bottom:.75rem;font-size:.85rem}.blanchering-key-card{background:var(--color-bg-elevated);margin-bottom:.5rem;padding:1rem}.blanchering-key-card h4{color:var(--color-text-primary);margin:0 0 .5rem;font-size:.95rem}.blanchering-key-card p{color:var(--color-text-secondary);margin:0;font-size:.9rem;line-height:1.4}.quote-box{background:var(--color-bg-elevated)}.quote-box .quote{color:var(--color-text-secondary);margin-bottom:.5rem;font-style:italic;line-height:1.6}.quote-box .quote-author{color:var(--color-text-secondary);text-align:right;margin:0;font-size:.85rem}.brassering-steps{margin-bottom:var(--space-lg)}.brassering-steps h3{text-transform:uppercase;letter-spacing:.1em;color:var(--color-text-secondary);margin-bottom:.75rem;font-size:.85rem}.brassering-step-card{background:var(--color-bg-card);border:1px solid var(--color-border);margin-bottom:.5rem;padding:1rem}.brassering-step-card h4{color:var(--color-primary-dark);margin:0 0 .5rem;font-size:.95rem}.brassering-step-card p{color:var(--color-text-primary);margin:0 0 .5rem;font-size:.9rem;line-height:1.4}.brassering-step-card .step-tip{color:var(--color-text-secondary);margin:0;font-size:.85rem}.guide-link-btn{width:100%;margin-top:var(--space-md);background:var(--color-bg-elevated);color:var(--color-primary-dark);text-align:left;cursor:pointer;border:none;padding:1rem;font-size:.95rem;font-weight:500;transition:all .2s;display:block}.guide-link-btn:hover{background:var(--color-primary-pale)}.guide-link-btn.brassering-link{background:var(--color-bg-elevated);border:1px solid var(--color-border);color:var(--color-primary-dark);font-weight:600}.guide-link-btn.brassering-link:hover{background:var(--color-primary-pale);border-color:var(--color-primary-dark)}.braising-select-row{gap:.5rem;margin-bottom:.75rem;display:flex}.braising-select{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-card);color:var(--color-text-primary);-webkit-appearance:none;appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='7' viewBox='0 0 12 7'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%238A847A' fill='none' stroke-width='1.5'/%3E%3C/svg%3E");background-position:right .75rem center;background-repeat:no-repeat;flex:1;padding:.6rem 2rem .6rem .75rem;font-family:inherit;font-size:.85rem;transition:border-color .2s}.braising-select:focus{border-color:var(--color-primary);outline:none}.braising-texture-row{grid-template-columns:repeat(4,1fr);gap:.4rem;display:grid}.braising-texture-btn{background:var(--color-bg-card);border:1.5px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-primary);cursor:pointer;text-align:center;padding:.5rem .25rem;font-size:.78rem;transition:all .15s}.braising-texture-btn:hover:not(.disabled){border-color:var(--color-primary)}.braising-texture-btn.active{background:var(--color-primary);color:var(--color-on-primary);border-color:var(--color-primary)}.braising-texture-btn.disabled{opacity:.35;cursor:not-allowed}.texture-desc{color:var(--color-text-secondary);margin-top:.5rem;font-size:.82rem;font-style:italic}.braising-result{margin-top:var(--space-md)}.braising-result h3{margin:0 0 .25rem;font-size:1.1rem}.braising-result .result-texture{color:var(--color-primary-dark);text-transform:uppercase;letter-spacing:.05em;margin:0 0 1rem;font-size:.85rem;font-weight:600}.braising-result-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.75rem;display:grid}.braising-result-card{background:var(--color-bg-elevated);flex-direction:column;padding:.75rem 1rem;display:flex}.braising-result-card .result-label{text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary);margin-bottom:.25rem;font-size:.72rem}.braising-result-card .result-value{color:var(--color-primary-dark);font-family:DM Mono,monospace;font-size:1.4rem;font-weight:500}.braising-result-card .result-time{color:var(--color-text-primary);font-family:DM Mono,monospace;font-size:.9rem;font-weight:500}.braising-tip{color:var(--color-text-secondary);margin-top:1rem;font-size:.85rem;line-height:1.4}.braising-na{text-align:center;color:var(--color-text-secondary);font-style:italic}.braising-methods-list{flex-direction:column;gap:.75rem;display:flex}.braising-method-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:1rem}.braising-method-card h4{color:var(--color-primary-dark);margin:0 0 .75rem;font-size:.95rem}.method-detail{margin-bottom:.5rem}.method-detail:last-child{margin-bottom:0}.method-label{text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary);font-size:.72rem;font-weight:600}.method-detail p{color:var(--color-text-primary);margin:.15rem 0 0;font-size:.88rem;line-height:1.4}.braising-collagen-chart{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);margin-top:.75rem;padding:1.25rem}.collagen-bar-group{justify-content:space-around;align-items:flex-end;gap:.5rem;height:160px;display:flex}.collagen-bar{background:var(--color-primary);min-width:0;color:var(--color-on-primary);border-radius:4px 4px 0 0;flex:1;justify-content:center;align-items:flex-end;padding-bottom:.35rem;transition:height .3s;display:flex}.collagen-bar span{color:#fff;white-space:nowrap;font-size:.7rem;font-weight:600}.chart-label{text-align:center;color:var(--color-text-secondary);margin-top:.5rem;font-size:.78rem}.blanchering-time-display{justify-content:center;margin:1rem 0 1.5rem;display:flex}.time-card{background:var(--color-bg-elevated);text-align:center;padding:1.5rem 2rem}.time-label{text-transform:uppercase;letter-spacing:.1em;color:var(--color-text-secondary);margin-bottom:.5rem;font-size:.8rem;display:block}.time-value{color:var(--color-primary-dark);font-family:DM Mono,monospace;font-size:1.75rem;font-weight:500;display:block}.blanchering-method{background:var(--color-bg-main);border:1px solid var(--color-primary-pale)}.blanchering-method ol{margin:0;padding-left:1.25rem}.blanchering-method li{color:var(--color-text-primary);margin-bottom:.5rem;font-size:.9rem;line-height:1.4}.philosophy-inline{margin-bottom:.25rem}.philosophy-toggle{width:100%;padding:.6rem var(--space-md);cursor:pointer;color:var(--color-text-secondary);text-align:left;background:0 0;border:none;align-items:center;font-size:.8rem;font-style:italic;transition:color .15s;display:flex}.philosophy-toggle:hover{color:var(--color-primary-dark)}.philosophy-content{padding:.75rem var(--space-md) 1rem;background:var(--color-bg-elevated);border-left:3px solid var(--color-text-secondary);margin:0 var(--space-md) .5rem}.philosophy-quote{color:var(--color-text-secondary);margin:0 0 .4rem;font-size:.85rem;font-style:italic;line-height:1.5}.philosophy-source{color:var(--color-text-secondary);margin:0 0 .75rem;font-size:.8rem}.philosophy-principles{margin:0;padding-left:1.25rem}.philosophy-principles li{color:var(--color-text-primary);margin-bottom:.4rem;font-size:.85rem;line-height:1.4}.recipe-scaler{background:var(--color-bg-elevated);margin-bottom:var(--space-lg);border:1px solid var(--color-primary-pale);padding:1rem}.scaler-label{letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-secondary);margin-bottom:.75rem;font-size:.75rem;font-weight:600}.scaler-controls{justify-content:center;align-items:center;gap:var(--space-md);margin-bottom:var(--space-md);display:flex}.scaler-btn{border:2px solid var(--color-primary-dark);background:var(--color-bg-card);width:40px;height:40px;color:var(--color-primary-dark);cursor:pointer;justify-content:center;align-items:center;font-size:1.5rem;font-weight:600;transition:all .15s;display:flex}.scaler-btn:hover{background:var(--color-primary-dark);color:var(--color-on-primary-dark)}.scaler-btn:disabled{opacity:.5;cursor:not-allowed}.scaler-value{color:var(--color-primary-dark);text-align:center;min-width:80px;font-size:1.5rem;font-weight:700}.scaler-presets{gap:var(--space-sm);flex-wrap:wrap;justify-content:center;display:flex}.preset-btn{border:1px solid var(--color-border);background:var(--color-bg-card);cursor:pointer;padding:.4rem .75rem;font-family:inherit;font-size:.85rem;transition:all .15s}.preset-btn:hover{border-color:var(--color-primary-dark)}.preset-btn.active{background:var(--color-primary-dark);border-color:var(--color-primary-dark);color:var(--color-on-primary-dark)}.structured-ingredient-list{margin:0;padding:0;list-style:none}.structured-ingredient{border-bottom:1px solid var(--color-border-light);cursor:pointer;-webkit-tap-highlight-color:transparent;color:var(--color-text-primary);flex-wrap:wrap;align-items:baseline;padding:.6rem 0;transition:background .15s;display:flex}.structured-ingredient *{-webkit-tap-highlight-color:transparent}.structured-ingredient:last-child{border-bottom:none}.structured-ingredient:hover{background:var(--color-bg-elevated);margin:0 -.5rem;padding-left:.5rem;padding-right:.5rem}.ingredient-main{align-items:baseline;gap:var(--space-sm);flex:1;min-width:200px;display:flex}.ingredient-amount{color:var(--color-primary-dark);min-width:70px;font-weight:600}.ingredient-amount-editable{border-bottom:1.5px dashed var(--color-primary);cursor:text;border-radius:0;padding-bottom:2px;transition:opacity .15s}.ingredient-amount-editable:active{opacity:.6}.structured-ingredient.editing{cursor:default;padding:.5rem 0}.structured-ingredient.editing:hover{background:0 0;margin:0;padding-left:0;padding-right:0}.ingredient-editor{background:var(--color-primary-pale);border-left:3px solid var(--color-primary);border-radius:0 6px 6px 0;width:100%;padding:.75rem;animation:.2s ease-out expandIn}.editor-label{color:var(--color-text-secondary);letter-spacing:.02em;text-transform:uppercase;margin-bottom:.5rem;font-size:.85rem;font-weight:500;display:block}.editor-controls{align-items:center;gap:.6rem;display:flex}.editor-input{color:var(--color-primary-dark);background:var(--color-bg-primary);border:1.5px solid var(--color-border);text-align:right;-webkit-appearance:none;border-radius:6px;outline:none;width:5rem;padding:.45rem .5rem;font-family:DM Mono,monospace;font-size:1.15rem;font-weight:500;transition:border-color .15s}.editor-input:focus{border-color:var(--color-primary)}.editor-units{flex-wrap:wrap;gap:.3rem;display:flex}.editor-unit-pill{color:var(--color-text-secondary);background:var(--color-bg-primary);border:1.5px solid var(--color-border);cursor:pointer;-webkit-tap-highlight-color:transparent;border-radius:100px;align-items:center;min-height:36px;padding:.35rem .65rem;font-family:Jost,sans-serif;font-size:.8rem;font-weight:500;transition:all .15s;display:flex}.editor-unit-pill.active{color:var(--color-on-primary);background:var(--color-primary);border-color:var(--color-primary);font-weight:600}.editor-unit-pill:not(.active):active{background:var(--color-bg-elevated);border-color:var(--color-primary)}.editor-unit-single{color:var(--color-text-secondary);font-family:Jost,sans-serif;font-size:.9rem;font-weight:500}.structured-ingredient .ingredient-name{color:var(--color-text-primary);font-weight:500}.ingredient-note{color:var(--color-text-secondary);font-size:.85rem;font-style:italic}.ingredient-conversion{color:var(--color-text-secondary);background:var(--color-bg-elevated);padding:.2rem .5rem;font-size:.8rem}.optional-tag{color:var(--color-text-secondary);background:var(--color-bg-elevated);padding:.15rem .4rem;font-size:.75rem}.ingredient-nutrition-popup{background:var(--color-bg-card);border:2px solid var(--color-primary-dark);z-index:1000;width:90%;max-width:320px;padding:1.5rem;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 8px 32px #00000026}.popup-header{margin-bottom:var(--space-md);justify-content:space-between;align-items:flex-start;display:flex}.popup-header h4{color:var(--color-text-primary);letter-spacing:.05em;text-transform:uppercase;margin:0;font-size:1rem}.popup-nutrition{grid-template-columns:repeat(2,1fr);gap:.75rem;display:grid}.nutrition-toggle{width:100%;margin-top:var(--space-md);background:var(--color-bg-main);border:1px solid var(--color-primary-light);cursor:pointer;color:var(--color-text-secondary);justify-content:center;align-items:center;gap:var(--space-sm);padding:.75rem;font-family:inherit;font-size:.85rem;transition:all .2s;display:flex}.nutrition-toggle:hover{background:var(--color-bg-elevated)}.recipe-nutrition{background:var(--color-bg-main);border:1px solid var(--color-primary-light);border-top:none;padding:1rem}.nutrition-row{border-bottom:1px solid var(--color-border);justify-content:space-between;padding:.5rem 0;display:flex}.nutrition-row:last-child{border-bottom:none}.nutrition-row .label{color:var(--color-text-secondary)}.nutrition-row .value{color:var(--color-text-secondary);font-weight:600}.per-portion{margin-top:var(--space-md);border-top:2px solid var(--color-primary-light);padding-top:1rem}.per-portion h4{letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-secondary);margin-bottom:.75rem;font-size:.75rem}.recipe-list{gap:var(--space-sm);flex-direction:column;display:flex}.sousvide-badge{background:var(--color-primary);color:var(--color-on-primary);border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:.08em;padding:.2rem .6rem;font-size:.7rem;font-weight:500}.doneness-selector{gap:var(--space-sm);margin:1rem 0;display:flex}.doneness-btn{border:1.5px solid var(--color-border);background:var(--color-bg-card);border-radius:var(--radius-sm);cursor:pointer;letter-spacing:.02em;flex:1;padding:.75rem;font-weight:400;transition:all .2s}.doneness-btn:hover{border-color:var(--color-text-muted)}.doneness-btn.active{color:#fff;border-color:#0000}.doneness-btn.active.rare{background:var(--color-bg-elevated);color:var(--color-text-primary);border-color:var(--color-primary)}.doneness-btn.active.medium{background:var(--color-primary);color:var(--color-on-primary);border-color:var(--color-primary)}.doneness-btn.active.welldone{background:var(--color-bg-header);color:var(--color-text-inverse);border-color:var(--color-bg-header)}.thickness-selector{background:var(--color-bg-elevated);border-radius:var(--radius-md);margin-bottom:var(--space-md);padding:1rem}.thickness-label{color:var(--color-text-secondary);margin-bottom:.5rem;font-size:.9rem;display:block}.thickness-slider{border-radius:var(--radius-sm);background:var(--color-border);-webkit-appearance:none;appearance:none;outline:none;width:100%;height:8px}.thickness-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:var(--color-primary);cursor:pointer;width:24px;height:24px;color:var(--color-on-primary);border:3px solid #fff;border-radius:50%;box-shadow:0 2px 4px #0003}.thickness-slider::-moz-range-thumb{background:var(--color-primary);cursor:pointer;width:24px;height:24px;color:var(--color-on-primary);border:3px solid #fff;border-radius:50%;box-shadow:0 2px 4px #0003}.thickness-marks{color:var(--color-text-secondary);justify-content:space-between;margin-top:.25rem;font-size:.75rem;display:flex}.mc-thickness-note{margin:.5rem 0 1rem}.thickness-note{color:var(--color-text-secondary);text-align:center;margin:.25rem 0;font-size:.8rem;font-style:italic}.thickness-note.mc-tip{color:var(--color-primary-dark);background:var(--color-bg-elevated);border-radius:var(--radius-sm);margin-top:.4rem;padding:.4rem .6rem;font-style:normal;font-weight:500}.sousvide-quick-info{background:var(--color-bg-elevated);border-radius:var(--radius-sm);color:var(--color-primary-dark);padding:.25rem .5rem;font-size:.8rem;font-weight:600}.sousvide-safety{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-md);margin-bottom:var(--space-md)}.safety-summary{cursor:pointer;color:var(--color-primary);padding:.75rem 1rem;font-weight:500}.safety-content{padding:0 1rem 1rem}.safety-zones{gap:var(--space-sm);margin-bottom:var(--space-md);flex-direction:column;display:flex}.safety-zone{gap:var(--space-sm);border-radius:var(--radius-sm);grid-template-columns:80px 120px 1fr;padding:.5rem;font-size:.85rem;display:grid}.zone-0{background:#ffebee}.zone-1{background:#fff3e0}.zone-2{background:#e8f5e9}.zone-range{color:var(--color-text-primary);font-weight:600}.zone-name{color:var(--color-text-primary);font-weight:500}.zone-desc{color:var(--color-text-secondary)}.safety-rules h4{color:var(--color-text-primary)}.safety-rules ul{margin:0;padding-left:1.25rem}.safety-rules li{color:var(--color-text-primary);margin-bottom:.5rem;font-size:.85rem}[data-theme=dark] .zone-0{background:#3d2626}[data-theme=dark] .zone-1{background:#3d3526}[data-theme=dark] .zone-2{background:#263d26}.veg-filter-row{flex-wrap:wrap;gap:.5rem;margin-bottom:1rem;display:flex}.veg-filter-btn{border:1px solid var(--color-border);background:var(--color-bg-card);color:var(--color-text-secondary);border-radius:var(--radius-sm);cursor:pointer;letter-spacing:.02em;padding:.45rem .85rem;font-size:.8rem;transition:all .15s}.veg-filter-btn.active{background:var(--color-primary);color:var(--color-on-primary);border-color:var(--color-primary)}.veg-table{border:1px solid var(--color-border);border-radius:var(--radius-card);flex-direction:column;display:flex;overflow:hidden}.veg-table-header{background:var(--color-bg-header);color:#f5f3ed;letter-spacing:.06em;text-transform:uppercase;grid-template-columns:2fr 1.5fr .7fr .8fr;padding:.6rem .75rem;font-size:.78rem;font-weight:500;display:grid}.veg-table-row{border-top:1px solid var(--color-border);grid-template-columns:2fr 1.5fr .7fr .8fr;align-items:center;padding:.55rem .75rem;font-size:.9rem;display:grid}.veg-table-row:nth-child(2n){background:var(--color-bg-card)}.veg-col-name{font-weight:500}.veg-col-temp,.veg-col-time{text-align:right;font-family:DM Mono,monospace;font-size:.85rem;font-weight:500}.veg-col-cut{opacity:.85;font-size:.85rem}.puree-detail p{margin:0;font-size:.9rem;line-height:1.5}@media (max-width:600px){.veg-table-header,.veg-table-row{grid-template-columns:1.5fr 1fr .6fr .7fr;padding:.45rem .5rem;font-size:.8rem}.veg-filter-btn{padding:.3rem .6rem;font-size:.8rem}}.veg-link{color:var(--color-primary);cursor:pointer;text-decoration:none}.veg-link:hover{text-decoration:underline}.trad-veg-card{background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-md);margin-bottom:.5rem;padding:.75rem 1rem}.trad-veg-header{justify-content:space-between;align-items:baseline;margin-bottom:.5rem;display:flex}.trad-veg-name{font-size:1rem;font-weight:700}.trad-veg-method{text-transform:uppercase;letter-spacing:.5px;color:var(--color-primary);flex-shrink:0;font-size:.75rem;font-weight:600}.trad-veg-details{flex-direction:column;gap:.2rem;display:flex}.trad-veg-row{justify-content:space-between;align-items:baseline;gap:.5rem;font-size:.85rem;display:flex}.trad-veg-label{text-transform:uppercase;letter-spacing:.3px;color:var(--color-text-secondary);flex-shrink:0;min-width:5rem;font-size:.72rem;font-weight:600}.trad-veg-row>span:last-child{text-align:right;color:var(--color-text-primary)}.hc-filter-row{-webkit-overflow-scrolling:touch;flex-wrap:nowrap;gap:.3rem;margin:.75rem 0;padding-bottom:.25rem;display:flex;overflow-x:auto}.hc-filter-row .veg-filter-btn{white-space:nowrap;flex-shrink:0;padding:.35rem .6rem;font-size:.78rem}.hc-list{flex-direction:column;gap:.5rem;margin-bottom:1.5rem;display:flex}.hc-card{background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;padding:.75rem 1rem;transition:border-color .15s}.hc-card:hover,.hc-card.expanded{border-color:var(--color-primary)}.hc-card-header{justify-content:space-between;align-items:flex-start;gap:.5rem;display:flex}.hc-card-title{flex-direction:column;gap:.15rem;display:flex}.hc-card-title strong{font-size:1rem}.hc-card-origin{color:var(--color-text-secondary);font-size:.78rem}.hc-card-badges{flex-wrap:wrap;justify-content:flex-end;gap:.25rem;display:flex}.hc-use-badge{text-transform:uppercase;letter-spacing:.5px;background:var(--color-bg-section);color:var(--color-text-secondary);border:1px solid var(--color-border);border-radius:2rem;padding:.15rem .4rem;font-size:.65rem;font-weight:600}.hc-card-details{border-top:1px solid var(--color-border);flex-direction:column;gap:.4rem;margin-top:.75rem;padding-top:.75rem;display:flex}.hc-detail-row{justify-content:space-between;align-items:flex-start;gap:.5rem;font-size:.88rem;display:flex}.hc-detail-label{color:var(--color-text-secondary);flex-shrink:0;min-width:5rem;font-weight:600}.hc-detail-value{text-align:right;color:var(--color-text-primary)}.hc-detail-tip{color:var(--color-text-secondary);margin-top:.5rem;font-size:.85rem;font-style:italic;line-height:1.5}.hc-level-card{background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-md);margin-bottom:.5rem;padding:.75rem 1rem}.hc-level-label{text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-secondary);margin-bottom:.5rem;font-size:.72rem;font-weight:600}.hc-level-entry{padding:.35rem 0}.hc-level-entry+.hc-level-entry{border-top:1px solid var(--color-border)}.hc-level-main{justify-content:space-between;align-items:baseline;gap:.75rem;display:flex}.hc-level-name{color:var(--color-text-primary);font-size:.9rem;font-weight:600}.hc-level-conc{color:var(--color-primary);white-space:nowrap;flex-shrink:0;font-size:.9rem;font-weight:700}.hc-level-note{color:var(--color-text-secondary);margin-top:.15rem;font-size:.78rem;font-style:italic}.hc-fluid-grid{grid-template-columns:1fr 1fr;gap:.5rem;margin-bottom:1.5rem;display:grid}@media (max-width:500px){.hc-fluid-grid{grid-template-columns:1fr}}.hc-gel-table-wrapper{margin-bottom:1.5rem;overflow-x:auto}.hc-gel-table{border-collapse:collapse;width:100%;font-size:.82rem}.hc-gel-table th{text-align:left;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid var(--color-border);padding:.5rem;font-size:.72rem;font-weight:600}.hc-gel-table td{border-bottom:1px solid var(--color-border);padding:.5rem}.hc-spher-section{margin-bottom:1.5rem}.pressure-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:8px;margin-bottom:.75rem;padding:1rem 1.2rem}.pressure-card-header{justify-content:space-between;align-items:center;margin-bottom:.5rem;display:flex}.pressure-card-header strong{font-size:1rem}.pressure-card-time{color:var(--color-primary);white-space:nowrap;margin-left:1rem;font-size:1.1rem;font-weight:700}.pressure-card-details{color:var(--color-text-secondary);flex-wrap:wrap;gap:.4rem 1.2rem;font-size:.82rem;display:flex}.oil-type-badge{background:var(--color-bg-main);color:var(--color-text-muted);border-radius:4px;margin-left:.75rem;padding:.15rem .5rem;font-size:.75rem}.pressure-card-tips{color:var(--color-text-muted);margin-top:.5rem;font-size:.82rem;font-style:italic}.rice-calc-unit{color:var(--color-text-secondary);align-items:center;padding:0 .5rem;font-size:.88rem;display:flex}.ingredients-view{max-width:800px;margin:0 auto;padding:1rem}.ingredients-view h1{margin-bottom:.25rem}.flavor-results{flex-direction:column;gap:.5rem;display:flex}.flavor-entry-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;padding:.75rem 1rem;transition:all .12s}.flavor-entry-card:hover{border-color:var(--color-primary)}.flavor-entry-header{justify-content:space-between;align-items:center;display:flex}.flavor-entry-name{font-size:1rem;font-weight:600}.flavor-entry-badges{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.flavor-entry-kcal{color:var(--color-primary-dark);white-space:nowrap;font-size:.75rem;font-weight:600}.flavor-entry-count{color:var(--color-text-muted);white-space:nowrap;font-size:.75rem}.flavor-entry-preview{flex-wrap:wrap;gap:.3rem;margin-top:.4rem;display:flex}.flavor-preview-tag{background:var(--color-primary-pale);color:var(--color-primary-dark);border-radius:var(--radius-sm);letter-spacing:.01em;padding:.12rem .4rem;font-size:.68rem}.flavor-preview-more{color:var(--color-text-muted);align-self:center;font-size:.7rem}.flavor-meta{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.5rem;margin-bottom:1rem;padding:.75rem;display:grid}.flavor-meta-item{flex-direction:column;gap:.15rem;display:flex}.flavor-meta-label{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:.7rem}.flavor-meta-item>span:last-child{font-size:.85rem;font-weight:500}.flavor-tips{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-sm);margin-bottom:1rem;padding:.65rem .85rem;font-size:.85rem;line-height:1.5}.flavor-rank-filter{flex-wrap:wrap;gap:.3rem;margin-bottom:1rem;display:flex}.flavor-rank-filter button{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;padding:.3rem .6rem;font-size:.75rem;transition:all .15s}.flavor-rank-filter button:hover{border-color:var(--color-primary-light)}.flavor-rank-filter button.active{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-on-primary)}.flavor-section{margin-bottom:1.5rem}.flavor-section h2{color:var(--color-text-secondary);margin-bottom:.5rem;font-size:1rem}.flavor-reverse-subtitle{color:var(--color-text-muted);margin-bottom:.5rem;font-size:.8rem}.flavor-pairings-list{flex-direction:column;gap:.2rem;display:flex}.flavor-pairing-item{border-radius:var(--radius-sm);justify-content:space-between;align-items:center;padding:.4rem .65rem;font-size:.85rem;transition:background .1s;display:flex}.flavor-pairing-item.clickable{cursor:pointer}.flavor-pairing-item.clickable:hover{background:var(--color-bg-card)}.flavor-pairing-item.rank-4{background:#ffd70014;font-weight:600}.flavor-pairing-item.rank-3{font-weight:600}.flavor-pairing-item.rank-2{font-weight:500}.flavor-pairing-item.rank-avoid{color:var(--color-text-secondary);background:#dc35450f}.flavor-pairing-rank{color:#e6a817;letter-spacing:-1px;font-size:.7rem}.flavor-more{color:var(--color-text-muted);text-align:center;padding:.3rem;font-size:.8rem}.flavor-affinities-list{flex-direction:column;gap:.4rem;display:flex}.flavor-affinity-item{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-sm);flex-wrap:wrap;align-items:center;gap:.3rem;padding:.4rem .65rem;font-size:.85rem;display:flex}.flavor-affinity-plus{color:var(--color-primary);font-weight:700}.flavor-avoid-title{color:#dc3545}.flavor-detail-header{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.25rem;margin-bottom:.5rem;display:flex}.flavor-detail-header h1{margin-bottom:0}.ingredient-description{width:100%;color:var(--color-text-secondary);margin:.25rem 0 0;font-size:.88rem;line-height:1.45}.flavor-detail-count{color:var(--color-text-muted);white-space:nowrap;font-size:.8rem}.flavor-section-title{text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted);margin-bottom:.5rem;font-size:.85rem;font-weight:600}.flavor-list-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.5rem;display:flex}.flavor-list-header .flavor-section-title,.flavor-list-header .flavor-rank-filter{margin-bottom:0}.flavor-top-section{margin-bottom:1.25rem}.flavor-top-grid{flex-wrap:wrap;gap:.35rem;display:flex}.flavor-top-item{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-sm);align-items:center;gap:.35rem;padding:.3rem .6rem;font-size:.82rem;transition:all .12s;display:inline-flex}.flavor-top-item.clickable{cursor:pointer}.flavor-top-item.clickable:hover{border-color:var(--color-primary);background:var(--color-primary-pale)}.flavor-top-item.rank-4{background:#ffd7001a;border-color:#ffd7004d;font-weight:600}.flavor-top-item.rank-3{font-weight:600}.flavor-top-name{font-size:.85rem}.flavor-top-rank{color:#e6a817;letter-spacing:-1px;font-size:.65rem}.flavor-reverse-toggle{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;width:100%;color:var(--color-text-secondary);justify-content:space-between;align-items:center;margin-bottom:.5rem;padding:.6rem .85rem;font-family:inherit;font-size:.85rem;font-weight:600;transition:all .15s;display:flex}.flavor-reverse-toggle:hover{border-color:var(--color-primary)}.flavor-toggle-arrow{color:var(--color-text-muted);font-size:.7rem}.flavor-reverse-grid{flex-wrap:wrap;gap:.3rem;display:flex}.flavor-reverse-chip{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;align-items:center;gap:.25rem;padding:.25rem .55rem;font-size:.75rem;transition:all .15s;display:inline-flex}.flavor-reverse-chip:hover{border-color:var(--color-primary);background:var(--color-primary-light)}.flavor-reverse-rank{color:#e6a817;letter-spacing:-1px;font-size:.6rem}.flavor-toolbar{justify-content:space-between;align-items:flex-start;gap:.75rem;margin-bottom:1rem;display:flex}.flavor-sort{flex-shrink:0;gap:.2rem;display:flex}.flavor-sort-btn{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;letter-spacing:.03em;padding:.3rem .55rem;font-family:inherit;font-size:.72rem;font-weight:500;transition:all .15s}.flavor-sort-btn:hover{border-color:var(--color-primary-light)}.flavor-sort-btn.active{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-on-primary)}.flavor-result-count{color:var(--color-text-muted);margin-bottom:.5rem;font-size:.8rem}.flavor-source{color:var(--color-text-muted);text-align:center;border-top:1px solid var(--color-border);margin-top:2rem;padding-top:1rem;font-size:.75rem}.no-results{text-align:center;color:var(--color-text-muted);padding:2rem}.load-more-btn{min-height:44px;margin:var(--space-lg) auto;color:var(--color-primary);background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);font:inherit;cursor:pointer;padding:.6rem 1.2rem;display:block}.create-recipe-btn-card{align-items:center;gap:var(--space-md);margin-bottom:var(--space-lg);background:var(--color-bg-card);border:1.5px dashed var(--color-primary-light);border-radius:var(--radius-sm);cursor:pointer;padding:1rem 1.25rem;transition:all .2s;display:flex;position:relative}.create-recipe-btn-card:hover{background:var(--color-primary-pale);border-color:var(--color-primary)}.create-recipe-plus{color:var(--color-primary-dark);background:var(--color-bg-elevated);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:2rem;height:2rem;font-size:1.5rem;font-weight:300;display:flex}.create-recipe-text{flex-direction:column;flex:1;gap:.15rem;display:flex}.create-recipe-text strong{color:var(--color-text-primary);font-size:.95rem}.saved-count{color:var(--color-text-secondary);font-size:.8rem}.recipe-meta{gap:var(--space-md);margin-bottom:var(--space-md);display:flex}.meta-item{background:var(--color-bg-elevated);color:var(--color-primary-dark);padding:.4rem .75rem;font-size:.875rem}.recipe-description{color:var(--color-text-secondary);margin-bottom:var(--space-lg);line-height:1.5}.recipe-section{margin-bottom:var(--space-lg)}.recipe-section h3{letter-spacing:.15em;text-transform:uppercase;color:var(--color-text-secondary);margin-bottom:.75rem;font-size:.75rem}.ingredient-list,.steps-list{padding-left:1.25rem}.ingredient-list li,.steps-list li{margin-bottom:.5rem;line-height:1.4}.api-credit{color:var(--color-text-secondary);margin-bottom:var(--space-md);font-size:.8rem}.portion-selector{align-items:center;gap:var(--space-sm);margin-bottom:var(--space-lg);display:flex}.portion-selector input{border:2px solid var(--color-border);text-align:center;width:80px;padding:.5rem;font-size:1rem}.nutrition-grid{margin-bottom:var(--space-lg);grid-template-columns:repeat(2,1fr);gap:.75rem;display:grid}.nutrition-card{background:var(--color-bg-card);text-align:center;border:1px solid var(--color-border);padding:1rem}.nutrition-value{color:var(--color-primary-dark);font-size:1.5rem;font-weight:700;display:block}.nutrition-label{color:var(--color-text-secondary);font-size:.8rem}.unified-nutrition-section{background:var(--color-bg-card);border:1px solid var(--color-border);margin-bottom:1rem;padding:1rem}.add-to-meal-btn{background:var(--color-primary-dark);width:100%;color:var(--color-on-primary-dark);cursor:pointer;letter-spacing:.05em;text-transform:uppercase;border:none;padding:1rem;font-size:1rem;font-weight:600}.meal-summary{background:var(--color-bg-card);border:1px solid var(--color-border);margin-top:1.5rem;padding:1rem}.meal-summary h3{letter-spacing:.15em;text-transform:uppercase;color:var(--color-text-secondary);margin-bottom:.75rem;font-size:.75rem}.meal-item{border-bottom:1px solid var(--color-border-light);justify-content:space-between;align-items:center;padding:.5rem 0;display:flex}.meal-item button{color:var(--color-primary-dark);cursor:pointer;background:0 0;border:none;font-size:1.25rem}.meal-totals{flex-wrap:wrap;gap:.5rem 1rem;margin-top:.5rem;padding-top:.75rem;font-size:.9rem;display:flex}.clear-meal-btn{width:100%;margin-top:var(--space-md);background:var(--color-bg-elevated);color:var(--color-primary-dark);cursor:pointer;border:none;padding:.75rem}.create-view h1{margin-bottom:var(--space-md)}.create-form{background:var(--color-bg-card);border:1px solid var(--color-border);padding:1.5rem}.form-row{gap:var(--space-md);display:flex}.form-row .flex-2{flex:2}.form-row .flex-1{flex:1}.form-group{margin-bottom:var(--space-md)}.form-group label{color:var(--color-text-secondary);letter-spacing:.1em;text-transform:uppercase;margin-bottom:.5rem;font-size:.8rem;font-weight:500;display:block}.form-group input,.form-group select,.form-group textarea{border:2px solid var(--color-border);box-sizing:border-box;width:100%;padding:.75rem;font-family:inherit;font-size:1rem}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--color-primary-dark);outline:none}.form-group textarea{resize:vertical;min-height:60px}.ingredient-search-row{position:relative}.ingredient-search-results{background:var(--color-bg-card);border:2px solid var(--color-primary-dark);z-index:1000;border-top:none;border-radius:0 0 8px 8px;max-height:250px;position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 4px 12px #00000026}.ingredient-result-item{cursor:pointer;border-bottom:1px solid var(--color-border);justify-content:space-between;padding:.75rem;display:flex}.ingredient-result-item:hover{background:var(--color-bg-elevated)}.ingredient-name{font-weight:500}.ingredient-kcal{color:var(--color-text-secondary);font-size:.85rem}.ingredient-amount-row{gap:var(--space-sm);margin-top:.5rem;display:flex}.amount-input,.unit-select{flex:none!important;width:80px!important}.add-ingredient-btn{background:var(--color-primary-dark);color:var(--color-on-primary-dark);cursor:pointer;border:none;flex:1;padding:.75rem;font-weight:600}.recipe-ingredients-list{background:var(--color-bg-elevated);margin-bottom:var(--space-md);border-radius:var(--radius-sm);padding:1rem}.recipe-ingredient-item{border-bottom:1px solid var(--color-border);align-items:center;padding:.5rem 0;display:flex}.recipe-ingredient-item:last-child{border-bottom:none}.ing-amount{min-width:80px;color:var(--color-primary-dark);font-weight:600}.ing-name{flex:1}.remove-btn{color:var(--color-primary-dark);cursor:pointer;background:0 0;border:none;padding:0 .5rem;font-size:1.25rem}.step-input-row{gap:var(--space-sm);display:flex}.step-input-row input{flex:1}.add-step-btn{background:var(--color-primary-dark);width:44px;color:var(--color-on-primary-dark);cursor:pointer;border:none;font-size:1.5rem}.steps-list{margin-top:.75rem;padding-left:1.25rem}.steps-list li{justify-content:space-between;align-items:flex-start;padding:.5rem 0;display:flex}.steps-list li span{flex:1}.recipe-nutrition-summary{background:var(--color-bg-elevated);margin:1rem 0;padding:1rem}.nutrition-mini-grid{gap:var(--space-sm);text-align:center;grid-template-columns:repeat(4,1fr);margin-top:.5rem;font-size:.9rem;display:grid}.nutrition-mini-grid strong{color:var(--color-primary-dark)}.form-actions{gap:var(--space-sm);margin-top:var(--space-md);display:flex}.save-recipe-btn{padding:var(--space-md);background:var(--color-primary);color:var(--color-on-primary);cursor:pointer;border-radius:var(--radius-md);transition:background var(--transition-fast);border:none;flex:1;font-size:1rem;font-weight:600}.save-recipe-btn:hover{background:var(--color-primary-dark);color:var(--color-on-primary-dark)}.cancel-edit-btn{padding:var(--space-md);background:var(--color-border);color:var(--color-text-secondary);cursor:pointer;border-radius:var(--radius-md);transition:background var(--transition-fast);border:none}.cancel-edit-btn:hover{background:var(--color-primary-pale)}.saved-recipes{margin-top:2rem}.saved-recipes h2{letter-spacing:.15em;text-transform:uppercase;color:var(--color-text-secondary);margin-bottom:var(--space-md);font-size:.75rem}.saved-recipe-card{background:var(--color-bg-card);border:1px solid var(--color-border);margin-bottom:.75rem}.recipe-header{cursor:pointer;justify-content:space-between;align-items:center;padding:1rem;display:flex}.recipe-header:hover{background:var(--color-bg-elevated)}.saved-recipe-card h3,.recipe-header-title{color:var(--color-text-primary);margin-bottom:.25rem;font-size:1rem;font-weight:600}.saved-recipe-card p,.recipe-header-meta{color:var(--color-text-secondary);font-size:.85rem}.expand-arrow{color:var(--color-primary-dark)}.recipe-details{border-top:1px solid var(--color-border);padding:0 1rem 1rem}.recipe-ingredients ul,.recipe-steps ol{margin:.5rem 0 1rem 1.25rem}.recipe-ingredients li,.recipe-steps li{padding:.25rem 0;font-size:.9rem}.recipe-actions{gap:var(--space-sm);margin-top:var(--space-md);display:flex}.recipe-actions button{border:1px solid var(--color-border);background:var(--color-bg-card);cursor:pointer;flex:1;padding:.75rem;font-size:.9rem}.recipe-actions button:hover{background:var(--color-bg-elevated)}.portion-scaler{background:var(--color-bg-elevated);margin-bottom:var(--space-md);border-radius:var(--radius-sm);align-items:center;gap:.75rem;padding:.75rem 1rem;display:flex}.portion-scaler label{font-size:.85rem;font-weight:600}.scaler-controls{align-items:center;gap:var(--space-sm);display:flex}.scaler-controls button{border:1px solid var(--color-primary-dark);background:var(--color-bg-card);width:32px;height:32px;color:var(--color-primary-dark);cursor:pointer;border-radius:var(--radius-sm);font-size:1.25rem}.scaler-controls button:hover{background:var(--color-bg-elevated)}.portion-count{text-align:center;min-width:2rem;color:var(--color-primary-dark);font-size:1.25rem;font-weight:700}.reset-btn{margin-left:.5rem;width:auto!important;padding:0 .75rem!important;font-size:.8rem!important}.scaled-amount{color:var(--color-primary-dark);font-weight:600}.gram-equiv{color:var(--color-text-secondary);margin-left:.25rem;font-size:.8rem}.recipe-nutrition-scaled{background:var(--color-bg-elevated);margin:1rem 0;padding:.75rem 1rem}.recipe-nutrition-scaled strong:first-child{margin-bottom:.5rem;font-size:.85rem;display:block}.ingredient-amount-section{margin-top:.5rem}.measure-hint{color:var(--color-text-secondary);background:var(--color-bg-elevated);border-radius:var(--radius-sm);margin-top:.5rem;padding:.5rem;font-size:.85rem}.search-results-count{color:var(--color-text-secondary);margin-bottom:var(--space-md);font-size:.875rem}.ingredient-mode-toggle{border:2px solid var(--color-border);border-radius:var(--radius-sm);gap:0;margin-bottom:.75rem;display:flex;overflow:hidden}.ingredient-mode-toggle button{background:var(--color-bg-elevated);cursor:pointer;color:var(--color-text-secondary);transition:all var(--transition-fast);border:none;flex:1;padding:.5rem 1rem;font-size:.85rem;font-weight:500}.ingredient-mode-toggle button.active{background:var(--color-primary-dark);color:var(--color-on-primary-dark)}.ingredient-note-input{border:2px solid var(--color-border);box-sizing:border-box;width:100%;margin-top:.5rem;padding:.6rem .75rem;font-family:inherit;font-size:.9rem}.ingredient-note-input:focus{border-color:var(--color-primary-dark);outline:none}.ing-reorder{flex-direction:column;gap:1px;margin-right:.5rem;display:flex}.ing-reorder button{background:var(--color-bg-elevated);border:1px solid var(--color-border);cursor:pointer;width:22px;height:20px;color:var(--color-text-secondary);padding:0;font-size:.7rem;line-height:1}.ing-reorder button:hover:not(:disabled){background:var(--color-primary-pale)}.ing-reorder button:disabled{opacity:.3;cursor:default}.step-reorder{flex-direction:column;flex-shrink:0;gap:1px;margin-right:.5rem;display:flex}.step-reorder button{background:var(--color-bg-elevated);border:1px solid var(--color-border);cursor:pointer;width:22px;height:20px;color:var(--color-text-secondary);padding:0;font-size:.7rem;line-height:1}.step-reorder button:hover:not(:disabled){background:var(--color-primary-pale)}.step-reorder button:disabled{opacity:.3;cursor:default}.custom-badge{background:var(--color-bg-elevated);border:1px solid var(--color-border);color:var(--color-text-muted);border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:.05em;vertical-align:middle;margin-left:.4rem;padding:.1rem .35rem;font-size:.65rem}.main-ingredient-badge{background:var(--color-primary-dark);color:var(--color-on-primary-dark);border-radius:var(--radius-sm);vertical-align:middle;margin-left:.4rem;padding:.1rem .35rem;font-size:.65rem}.percent-display{color:var(--color-text-secondary);text-align:right;min-width:40px;margin-right:.25rem;font-size:.8rem}.set-main-btn{border:1px solid var(--color-border);background:var(--color-bg-card);cursor:pointer;color:var(--color-text-secondary);margin-right:.25rem;padding:.15rem .4rem;font-size:.7rem}.set-main-btn:hover{background:var(--color-primary-pale)}.is-main{background:var(--color-bg-elevated);border-radius:var(--radius-sm)}.recipe-tag{background:var(--color-primary-pale);color:var(--color-primary-dark);border-radius:var(--radius-xl);margin-right:.3rem;padding:.15rem .5rem;font-size:.7rem;font-weight:500;display:inline-block}.import-basics-select{border:2px solid var(--color-border);background:var(--color-bg-card);cursor:pointer;width:100%;padding:.75rem;font-family:inherit;font-size:.95rem}.import-basics-select:focus{border-color:var(--color-primary-dark);outline:none}.saved-recipes-header{margin-bottom:var(--space-md);justify-content:space-between;align-items:center;display:flex}.saved-recipes-header h2{margin-bottom:0}.recipe-list-actions{gap:var(--space-sm);display:flex}.export-btn{background:var(--color-bg-elevated);border:1px solid var(--color-border);cursor:pointer;color:var(--color-text-secondary);border-radius:var(--radius-sm);transition:background var(--transition-fast);padding:.5rem .9rem;font-size:.8rem;font-weight:500}.export-btn:hover{background:var(--color-primary-pale);border-color:var(--color-primary-dark);color:var(--color-primary-dark)}.recipe-list-filter{gap:var(--space-sm);margin-bottom:var(--space-md);display:flex}.recipe-list-filter input{border:2px solid var(--color-border);flex:2;padding:.6rem .75rem;font-family:inherit;font-size:.9rem}.recipe-list-filter input:focus{border-color:var(--color-primary-dark);outline:none}.recipe-list-filter select{border:2px solid var(--color-border);background:var(--color-bg-card);flex:1;padding:.6rem .75rem;font-family:inherit;font-size:.9rem}.recipe-list-filter select:focus{border-color:var(--color-primary-dark);outline:none}.no-results{text-align:center;color:var(--color-text-muted);padding:1.5rem;font-size:.9rem}.recipe-description{color:var(--color-text-secondary);background:var(--color-bg-elevated);border-radius:var(--radius-sm);margin:.75rem 0;padding:.75rem;font-size:.9rem;line-height:1.6}.ing-note-display{color:var(--color-text-muted);font-size:.9em;font-style:italic}.ingredients-header label{margin-bottom:0!important;display:inline!important}.scaling-toggle{font-size:.85rem}.scaling-toggle label{cursor:pointer;align-items:center;gap:.4rem;text-transform:none!important;letter-spacing:0!important;color:var(--color-text-secondary)!important;margin-bottom:0!important;font-weight:400!important;display:flex!important}.scaling-toggle input[type=checkbox]{width:auto!important;padding:0!important}.recipe-share-section{margin-top:var(--space-md);padding-top:var(--space-md);border-top:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:var(--space-md);flex-wrap:wrap;display:flex}.share-buttons{gap:var(--space-sm);display:flex}.share-btn{color:var(--color-text-primary);border:1px solid var(--color-border);background:var(--color-bg-card);cursor:pointer;border-radius:var(--radius-sm);transition:background var(--transition-fast);padding:.6rem 1.2rem;font-size:.9rem}.share-btn:hover{background:var(--color-bg-elevated);color:var(--color-text-primary)}.scaling-toggle{background:var(--color-bg-elevated);border-radius:var(--radius-md);margin-bottom:var(--space-md);align-items:center;gap:.75rem;padding:.75rem;display:flex}.scaling-toggle label{align-items:center;gap:var(--space-sm);cursor:pointer;font-size:.9rem;display:flex}.scaling-toggle input[type=checkbox]{cursor:pointer;width:18px;height:18px}.main-ingredient-badge{background:var(--color-primary);color:var(--color-on-primary);border-radius:var(--radius-sm);margin-left:.5rem;padding:.15rem .4rem;font-size:.7rem;font-weight:600}.percent-display{color:var(--color-text-muted);margin-left:auto;padding-right:.5rem;font-size:.8rem}.set-main-btn{background:var(--color-primary);border-radius:var(--radius-sm);cursor:pointer;opacity:.6;color:var(--color-on-primary);border:none;padding:.25rem .5rem;font-size:.75rem;transition:opacity .2s}.set-main-btn:hover{opacity:1}.food-health-goals{background:var(--color-bg-elevated);border-radius:var(--radius-md);margin:1rem 0;padding:1rem}.health-match-section{margin-bottom:.75rem}.health-match-section:last-child{margin-bottom:0}.health-match-section h4{margin:0 0 .5rem;font-size:.85rem}.health-match-section.good h4{color:var(--color-primary-dark)}.health-match-section.avoid h4{color:var(--color-text-secondary)}.health-match-tags{gap:var(--space-sm);flex-wrap:wrap;display:flex}.health-match-tag{border-radius:var(--radius-xl);align-items:center;gap:.25rem;padding:.35rem .65rem;font-size:.8rem;font-weight:500;display:inline-flex}.health-match-tag.good{background:var(--color-bg-elevated);color:var(--color-primary-dark)}.health-match-tag.avoid{background:var(--color-bg-elevated);color:var(--color-text-secondary)}.ingredients-header{justify-content:space-between;align-items:center;margin-bottom:.5rem;display:flex}.recipe-ingredient-item.is-main{background:var(--color-info-bg)}.draft-header{margin-bottom:var(--space-lg)}.draft-header h2{margin-bottom:var(--space-sm)}.draft-header p{color:var(--color-text-secondary);font-size:.9rem}.deleted-recipes{margin-top:var(--space-xl);border-top:1px solid var(--color-border);padding-top:var(--space-md)}.deleted-recipes summary{cursor:pointer;padding:var(--space-sm) 0}.deleted-recipes ul{padding:0;list-style:none}.deleted-recipes li{justify-content:space-between;align-items:center;gap:var(--space-md);padding:var(--space-sm) 0;display:flex}.portion-scaler input.portion-count{width:5.5rem;min-width:0;min-height:44px;font:inherit;border:1px solid var(--color-border);background:var(--color-bg-card);color:var(--color-text-primary);border-radius:var(--radius-sm)}.ingredient-main>button.ingredient-amount{font:inherit;color:var(--color-primary);text-align:left;background:0 0;border:0;padding:.5rem 0}.ingredient-nutrition-toggle{border:1px solid var(--color-border);background:var(--color-bg-card);color:var(--color-text-secondary);border-radius:var(--radius-sm);font:inherit;margin-left:auto;padding:.5rem;font-size:.8rem}.editor-actions{gap:var(--space-sm);margin-top:var(--space-sm);flex-wrap:wrap;display:flex}.share-fallback{margin-top:var(--space-md);display:block}.share-fallback textarea{width:100%;margin-top:var(--space-sm);font:inherit;display:block}.print-recipe-link{overflow-wrap:anywhere;display:none}@media (max-width:480px){.saved-recipes-header{align-items:flex-start;gap:var(--space-sm);flex-direction:column}.recipe-list-filter{flex-direction:column}.recipe-list-filter input,.recipe-list-filter select{width:100%}.ingredient-main{flex-wrap:wrap}.ing-reorder button,.step-reorder button,.recipe-ingredient-item .remove-btn,.steps-list .remove-btn{min-width:32px;min-height:36px}}@media (min-width:768px){.app-main{max-width:720px}.ingredients-view{max-width:900px}.temp-top-tabs{grid-template-columns:repeat(4,1fr)}.items-list{grid-template-columns:1fr 1fr;display:grid}.items-list .item-row{border-bottom:1px solid var(--color-border-light);border-right:1px solid var(--color-border-light)}.items-list .item-row:nth-child(2n){border-right:none}.items-list .item-row:last-child,.items-list .item-row:nth-last-child(2):nth-child(odd){border-bottom:none}}@media (min-width:1024px){.app-main{max-width:920px;padding:2rem}.ingredients-view{max-width:1000px}.home-grid{gap:var(--space-xl);grid-template-columns:repeat(3,1fr);align-items:start;display:grid}.rice-calculator{max-width:540px}.science-facts-grid,.basics-grid{grid-template-columns:repeat(4,1fr)}.rice-result-content,.rice-result-grid{grid-template-columns:repeat(2,1fr);gap:.75rem;display:grid}.hc-level-card{gap:var(--space-md);grid-template-columns:repeat(2,1fr);display:grid}.veg-table{font-size:.92rem}.baking-focaccia-cols{grid-template-columns:repeat(3,1fr)}}@media (min-width:1400px){.app-main{max-width:1060px}.ingredients-view{max-width:1100px}}@media print{body[data-printing-recipe] .create-view>:not(.saved-recipes),body[data-printing-recipe] .saved-recipes>:not(.recipe-list),body[data-printing-recipe] .recipe-list>:not(.print-target),.app-notice,.draft-header,.editor-actions,.ingredient-nutrition-toggle,.share-fallback,.skip-link,.recipe-share-section>[role=status]{display:none!important}.print-recipe-link{font-size:9pt;display:block}.print-target .recipe-header{border:none}.print-target .expand-arrow{display:none}:root,[data-theme=dark]{--color-bg-main:#fff!important;--color-bg-card:#fff!important;--color-bg-elevated:#f5f3ed!important;--color-text-primary:#1c1c1c!important;--color-text-secondary:#5a564e!important;--color-text-muted:#8a847a!important;--color-border:#d6d0c5!important;--color-border-light:#e6e1d8!important;--color-primary:#b8602a!important}.app-header,.app-tools,.view-actions,.app-footer,.back-btn,.share-buttons,.recipe-actions,.scaler-controls,.scaler-presets,.portion-scaler,.recipe-scaler,.app-header-actions,.cross-link-btn,.add-to-meal-btn,.create-recipe-btn-card,.temp-top-tabs,.temp-sub-tabs{display:none!important}body{font-size:11pt;line-height:1.4;color:#1a1a1a!important;background:#fff!important}.app-container{padding:0;background:#fff!important}.app-main,.detail-view,.recipe-detail{padding:0}.recipe-section,.guide-section,.result-box{break-inside:avoid;page-break-inside:avoid}.recipe-section{border:1px solid #e0e0e0;margin-bottom:.5rem;padding:.75rem}.guide-section,.result-box{border:1px solid #e0e0e0;box-shadow:none!important}.recipe-ingredients-list li{border-bottom:1px dotted #e0e0e0;padding:.25rem 0}@page{margin:1.5cm}a[href]:after{content:none}}@keyframes viewEnterForward{0%{opacity:0;transform:translate(12px)}to{opacity:1;transform:translate(0)}}@keyframes viewEnterBack{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:translate(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}[data-nav=forward] .guide-wrapper,[data-nav=forward] .conversion-view,[data-nav=forward] .ingredients-view,[data-nav=forward] .ferment-recipe-detail{animation:.2s ease-out viewEnterForward}[data-nav=back] .home-grid{animation:.2s ease-out viewEnterBack}details .science-content{animation:.2s ease-out expandIn}@keyframes expandIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.temp-sub-tabs--scroll{-webkit-mask-image:linear-gradient(90deg,#000 85%,#0000 100%);mask-image:linear-gradient(90deg,#000 85%,#0000 100%)}.temp-sub-tabs--scroll:not(:hover){-webkit-mask-image:none;mask-image:none}.temp-sub-tabs--scroll:has(button:last-child.active){-webkit-mask-image:none;mask-image:none}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.app-header{text-align:left;padding:0 1rem}.app-header-inner{justify-content:space-between;align-items:center;gap:.75rem;max-width:1100px;min-height:60px;margin:0 auto;display:flex}.app-brand{white-space:nowrap;margin-left:-.25rem;padding:0 .25rem;font-size:1.2rem}.app-header-actions{align-items:center;gap:.375rem;display:flex}.header-action{border-radius:var(--radius-md);color:#f5f3edd1;letter-spacing:.06em;background:0 0;border:1px solid #f5f3ed2e;justify-content:center;align-items:center;gap:.5rem;min-width:44px;min-height:40px;padding:0 .625rem;font-size:.8rem;display:inline-flex}.header-action:hover{color:#f5f3ed;background:#f5f3ed0f;border-color:#f5f3ed73}.header-action:focus-visible{box-shadow:0 0 0 2px var(--color-bg-header), 0 0 0 4px var(--color-primary-light)}.lang-toggle{letter-spacing:.1em;font-size:.72rem;font-weight:600}.theme-toggle .icon-sun{display:none}[data-theme=dark] .theme-toggle .icon-sun{display:block}[data-theme=dark] .theme-toggle .icon-moon{display:none}.header-search-kbd{border-radius:var(--radius-sm);color:#f5f3ed99;border:1px solid #f5f3ed38;padding:.1rem .35rem;font-family:DM Mono,monospace;font-size:.68rem}@media (min-width:1024px){.app-header-inner{min-height:68px}.app-brand{font-size:1.45rem}.header-search{justify-content:flex-start;min-width:13rem}.header-search .header-search-kbd{margin-left:auto}}@media (max-width:600px){.header-search-label,.header-search-kbd{display:none}.app-brand{letter-spacing:.2em;font-size:1.05rem}}@media (max-width:359px){.app-brand{letter-spacing:.1em}}.app-main{position:relative}.back-btn{min-height:44px;margin-bottom:var(--space-sm);align-items:center;padding:0;display:inline-flex}.view-actions{z-index:20;border:0;flex-direction:column;align-items:flex-end;margin:0;padding:0;display:flex;position:absolute;top:1.5rem;right:1.5rem}.view-actions-bar{gap:.375rem;display:flex}.view-action{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-card);min-width:44px;min-height:44px;color:var(--color-text-secondary);letter-spacing:.04em;align-items:center;gap:.4rem;padding:0 .75rem;font-size:.78rem;display:inline-flex}.view-action:hover:not(:disabled),.view-action[aria-expanded=true]{border-color:var(--color-primary);color:var(--color-primary-dark)}[data-theme=dark] .view-action:hover:not(:disabled),[data-theme=dark] .view-action[aria-expanded=true]{color:var(--color-primary)}.view-actions-panel{background:var(--color-bg-card);border:1px solid var(--color-border);border-top:2px solid var(--color-primary);border-radius:var(--radius-md);width:min(22rem,100vw - 2rem);box-shadow:var(--shadow-lg);margin-top:.5rem;padding:1rem;font-size:.9rem}.view-actions-panel p{margin:0;line-height:1.5}.view-actions-panel .favorite-form+p{margin-top:.75rem}.favorite-form{gap:.5rem;max-width:none;margin:0;display:grid}.favorite-form label,.view-actions-manual{letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-secondary);gap:.375rem;font-size:.75rem;font-weight:500;display:grid}.favorite-form input,.view-actions-manual input{border:1.5px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-main);width:100%;min-height:44px;color:var(--color-text-primary);text-transform:none;letter-spacing:normal;padding:.5rem .75rem;font-size:1rem}.workspace-actions button.primary{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-on-primary)}@media (min-width:1024px){.view-actions{top:2rem;right:2rem}}@media (max-width:600px){.view-actions{top:1rem;right:1rem}.view-action{justify-content:center;padding:0}.view-action span{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}}:where(.app-main) h1{letter-spacing:-.005em;margin:0 0 .5rem;font-size:clamp(1.75rem,1.45rem + 1.2vw,2.25rem);font-weight:600;line-height:1.15}:where(.app-main) h1:focus{outline:none}.home-intro{grid-column:1/-1;gap:1rem;display:grid}.home-title{letter-spacing:.18em;text-transform:uppercase;color:var(--color-text-muted);font-size:.72rem;font-weight:500}.home-search{border:1.5px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-card);width:100%;min-height:52px;color:var(--color-text-muted);text-align:left;align-items:center;gap:.75rem;padding:0 1rem;font-size:.95rem;display:flex}.home-search svg{color:var(--color-primary);flex-shrink:0}.home-search span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.home-search:hover{border-color:var(--color-primary);color:var(--color-text-secondary)}.home-group-label{font-family:inherit}.favorites-section{padding:1rem 1.25rem}.favorites-section h2{letter-spacing:.15em;text-transform:uppercase;color:var(--color-text-muted);margin:0 0 .5rem;font-size:.7rem;font-weight:500}.favorites-section.is-empty{background:0 0;border-style:dashed;order:10}.favorites-section.is-empty p{font-size:.85rem;line-height:1.5}.favorites-list{grid-template-columns:repeat(auto-fill,minmax(min(100%,15rem),1fr));gap:.5rem;display:grid}.favorites-list li{border:1px solid var(--color-border);border-left:3px solid var(--color-primary);background:var(--color-bg-main);gap:0}.favorites-list a{color:var(--color-text-primary);padding:.75rem;font-weight:500;text-decoration:none}.favorites-list a:hover{color:var(--color-primary-dark)}.favorites-list button{width:44px;color:var(--color-text-muted);background:0 0;justify-content:center;align-items:center;display:inline-flex}.favorites-list button:hover{color:var(--color-error)}.quick-search-backdrop{z-index:100;background:#14120f8c;justify-content:center;align-items:flex-start;padding:10vh 1rem 1rem;animation:.12s ease-out fadeIn;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.quick-search{background:var(--color-bg-card);width:min(40rem,100%);max-height:75vh;color:var(--color-text-primary);border-top:3px solid var(--color-primary);border-radius:var(--radius-md);flex-direction:column;font-family:Jost,sans-serif;display:flex;overflow:hidden;box-shadow:0 16px 48px #0000004d}.quick-search-field{border-bottom:1px solid var(--color-border);color:var(--color-primary);align-items:center;gap:.75rem;padding:.5rem .5rem .5rem 1rem;display:flex}.quick-search-field input{min-width:0;min-height:48px;color:var(--color-text-primary);background:0 0;border:0;flex:1;font-size:1.1rem}.quick-search-field input:focus{box-shadow:none;outline:none}.quick-search-field input:focus-visible{box-shadow:none;outline:none}.quick-search-field input::-webkit-search-cancel-button{display:none}.quick-search-close{border:1px solid var(--color-border);border-radius:var(--radius-sm);min-height:40px;color:var(--color-text-secondary);background:0 0;padding:0 .75rem;font-size:.78rem}.quick-search-results{overscroll-behavior:contain;padding:.25rem 0 .5rem;list-style:none;overflow-y:auto}.quick-search-group{letter-spacing:.15em;text-transform:uppercase;color:var(--color-text-muted);padding:.75rem 1rem .25rem;font-size:.68rem;font-weight:500}.quick-search-option{cursor:pointer;border-left:3px solid #0000;justify-content:space-between;align-items:baseline;gap:1rem;min-height:44px;padding:.625rem 1rem;display:flex}.quick-search-option.active{background:var(--color-primary-pale);border-left-color:var(--color-primary)}.quick-search-title{overflow-wrap:anywhere;font-weight:500}.quick-search-detail{max-width:45%;color:var(--color-text-muted);text-align:right;flex-shrink:0;font-size:.8rem}.quick-search-note{color:var(--color-text-muted);padding:.5rem 1rem;font-size:.85rem}.quick-search-hint{border-top:1px solid var(--color-border-light);background:var(--color-bg-elevated);color:var(--color-text-muted);align-items:center;gap:.35rem;padding:.6rem 1rem;font-size:.75rem;display:flex}.quick-search-hint kbd,.header-search-kbd{font-family:DM Mono,monospace}.quick-search-hint kbd{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-card);padding:.05rem .35rem;font-size:.7rem}@media (max-width:600px){.quick-search-backdrop{align-items:stretch;padding:0}.quick-search{border-radius:0;height:100%;max-height:none}.quick-search-hint{display:none}.quick-search-option{flex-direction:column;gap:.1rem}.quick-search-detail{text-align:left;max-width:none}}summary{cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}summary:not(.science-summary){align-items:center;gap:.6rem;min-height:44px;display:flex}summary:not(.science-summary):before{content:"";border-right:1.5px solid var(--color-primary);border-bottom:1.5px solid var(--color-primary);width:.45rem;height:.45rem;transition:transform var(--transition-fast);flex-shrink:0;margin:0 .15rem;transform:rotate(-45deg)}details[open]>summary:not(.science-summary):before{transform:rotate(45deg)}details.guide-section{margin:0 0 var(--space-lg);background:var(--color-warning-bg);border-left:3px solid var(--color-warning);border-radius:var(--radius-sm);padding:0 1rem}details.guide-section>summary{font-weight:500}details.guide-section[open]{padding-bottom:.75rem}details.guide-section p{margin:0 0 .75rem;line-height:1.6}details.guide-section a{color:var(--color-primary-dark);overflow-wrap:anywhere}[data-theme=dark] details.guide-section a{color:var(--color-primary)}.app-tools{gap:.5rem;max-width:600px;padding:0 1.5rem 2rem;display:grid}@media (max-width:600px){.app-tools{padding:0 1rem 1.5rem}}@media (min-width:768px){.app-tools{grid-template-columns:1fr 1fr;align-items:start;max-width:720px}}@media (min-width:1024px){.app-tools{max-width:920px;padding:0 2rem 2rem}}@media (min-width:1400px){.app-tools{max-width:1060px}}.local-tools{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-card);padding:0 1rem}.local-tools[open]{padding-bottom:1rem}.local-tools>summary{padding:.5rem 0}.source-notes.local-tools{margin-top:var(--space-xl)}.source-notes h2{font-size:.95rem}@media (max-width:600px){.create-form{padding:1rem}.form-row{gap:0 .75rem}.form-row>.flex-1{flex:8.5rem}.form-row>.flex-2{flex:100%}}.app-footer{padding:1.25rem 1rem}.footer-credit{margin:0}.footer-version{letter-spacing:.05em;text-transform:none;font-family:DM Mono,monospace}@media print{.app-header-actions,.quick-search-backdrop{display:none!important}}button:where(.item-row,.ferment-recipe-card,.create-recipe-btn-card,.flavor-entry-card,.ingredient-result-item,.recipe-header,.card-toggle){width:100%;color:inherit;font:inherit;letter-spacing:inherit;text-align:left;background:0 0;border:0;border-radius:0;margin:0;padding:0;display:block}:where(.as-block){display:block}.ferment-recipe-name{font-weight:600}button:where(.veg-link){font:inherit;text-align:left;background:0 0;border:0;padding:0}button.veg-link:focus-visible{text-decoration:underline}.card-toggle{cursor:pointer}.card-toggle-title{font-weight:600}@font-face{font-family:Jost;font-style:normal;font-weight:100 900;font-display:swap;src:url(/assets/jost-latin-wght-normal-ObQm3Zd1.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Jost;font-style:normal;font-weight:100 900;font-display:swap;src:url(/assets/jost-latin-ext-wght-normal-BDUtSsKd.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/dm-mono-latin-400-normal-4GdczIuU.woff2)format("woff2")}@font-face{font-family:DM Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/dm-mono-latin-500-normal-DRMDZjhP.woff2)format("woff2")}
