:root{--primary-color: #e2e8f0;--primary-light: #cbd5e0;--accent-color: #fc8181;--accent-hover: #f56565;--background-color: #1a202c;--card-background: #2d3748;--text-color: #e2e8f0;--text-secondary: #a0aec0;--border-color: #4a5568;--success-color: #68d391;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.6;color:var(--text-color);background-color:var(--background-color);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.app-header{background-color:var(--card-background);box-shadow:var(--shadow-sm);position:sticky;top:0;z-index:100;border-bottom:1px solid var(--border-color)}.header-content{max-width:1400px;margin:0 auto;padding:var(--spacing-sm) var(--spacing-md);display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-md)}.header-title{font-size:1.25rem;font-weight:700;color:var(--primary-color);text-decoration:none;display:flex;align-items:center;gap:var(--spacing-sm);transition:color .2s}.header-title:hover{color:#0891b2}.header-search{flex:1;max-width:500px}.search-input-wrapper{position:relative;display:flex;align-items:center;flex-wrap:wrap;width:100%;border:2px solid var(--border-color);border-radius:var(--radius-md);background-color:var(--card-background);transition:all .2s;padding:.5rem 1rem;gap:var(--spacing-sm);min-height:46px}.search-input-wrapper:focus-within{border-color:#0891b2;box-shadow:0 0 0 3px #0891b240}.header-search input{flex:1;min-width:150px;padding:.25rem 0;font-size:1rem;border:none;background-color:transparent;color:var(--text-color);outline:none}.inline-tag-filter{display:flex;align-items:center;gap:.25rem;padding:.25rem .5rem;background-color:#0891b2;border-radius:var(--radius-xl);flex-shrink:0}.inline-tag-filter .filter-tag{font-size:.8rem;color:#fff;font-weight:600;white-space:nowrap}.inline-tag-filter .clear-filter-btn{display:flex;align-items:center;justify-content:center;padding:.1rem;background-color:transparent;color:#fffc;border:none;border-radius:var(--radius-sm);cursor:pointer;transition:all .2s}.inline-tag-filter .clear-filter-btn:hover{background-color:#fff3;color:#fff}.header-page-title{flex:1;max-width:500px}.header-page-title h1{color:var(--primary-color);font-size:1.5rem;font-weight:700;margin:0}.header-nav{display:flex;gap:var(--spacing-md);align-items:center}.wake-lock-container{position:relative;display:inline-block}.wake-lock-btn{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background-color:transparent;color:var(--text-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);cursor:pointer;transition:all .2s;font-size:.8rem;font-weight:600}.wake-lock-btn:hover{background-color:#0891b21a;color:var(--primary-color);border-color:#0891b2}.wake-lock-btn.active{background-color:#0891b2;color:#fff;border-color:#0891b2;box-shadow:0 0 8px #0891b280}.wake-lock-text{white-space:nowrap}.wake-lock-tooltip{position:absolute;top:calc(100% + .5rem);right:0;left:auto;display:flex;align-items:flex-start;gap:.5rem;padding:.75rem;background-color:var(--card-background);border:1px solid #0891b2;border-radius:var(--radius-md);box-shadow:var(--shadow-lg);font-size:.8rem;color:var(--text-color);max-width:250px;z-index:200;animation:tooltipFadeIn .3s ease-out}.wake-lock-tooltip:before{content:"";position:absolute;bottom:100%;right:1rem;border:6px solid transparent;border-bottom-color:#0891b2}@keyframes tooltipFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.wake-lock-tooltip-close{flex-shrink:0;display:flex;align-items:center;justify-content:center;padding:.15rem;background:transparent;border:none;color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-sm);transition:all .2s}.wake-lock-tooltip-close:hover{background-color:#ffffff1a;color:var(--text-color)}.nav-link{padding:var(--spacing-sm) var(--spacing-md);color:var(--text-secondary);text-decoration:none;border-radius:var(--radius-md);transition:all .2s;font-weight:500}.nav-link:hover{color:var(--primary-light);background-color:#ffffff0d}.btn-primary{padding:.5rem 1rem;background-color:#0891b2;color:#fff;border:none;border-radius:var(--radius-md);cursor:pointer;font-size:.9rem;font-weight:600;transition:all .2s;box-shadow:var(--shadow-sm);text-decoration:none;display:inline-block}.btn-primary:hover{background-color:#0e7490;box-shadow:var(--shadow-md);transform:translateY(-1px)}.header-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.5rem 1rem;background-color:#0891b2;color:#fff;border:none;border-radius:var(--radius-md);cursor:pointer;font-family:inherit;font-size:.9rem;font-weight:600;line-height:1.4;text-decoration:none;transition:all .2s;box-shadow:var(--shadow-sm)}.header-btn:hover{background-color:#0e7490;box-shadow:var(--shadow-md);transform:translateY(-1px)}.app{max-width:1400px;margin:0 auto;padding:var(--spacing-md) var(--spacing-sm)}.loading,.error{text-align:center;padding:var(--spacing-2xl);font-size:1.125rem;color:var(--text-secondary)}.error{color:var(--accent-color)}.controls-bar{display:flex;flex-direction:column;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg)}.controls-bar-header{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-md)}.filter-toggle-btn{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background-color:var(--card-background);color:var(--text-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);cursor:pointer;font-size:.85rem;font-weight:600;transition:all .2s}.filter-toggle-btn:hover{background-color:#0891b21a;color:var(--primary-color);border-color:#0891b2}.filter-toggle-btn.expanded{background-color:#0891b21a;border-color:#0891b2;color:var(--primary-color)}.filter-toggle-btn.has-filters{border-color:#0891b2}.filter-badge{display:flex;align-items:center;justify-content:center;min-width:1.25rem;height:1.25rem;padding:0 .35rem;background-color:#0891b2;color:#fff;border-radius:9999px;font-size:.7rem;font-weight:700}.filter-toggle-chevron{transition:transform .2s ease}.filter-toggle-chevron.expanded{transform:rotate(180deg)}.filters-content{display:none;flex-direction:column;gap:var(--spacing-sm);padding-top:var(--spacing-sm);border-top:1px solid var(--border-color)}.filters-content.expanded{display:flex}.time-filters{display:flex;gap:var(--spacing-xs);flex-shrink:0}.time-filter-btn{padding:.35rem .75rem;background-color:var(--card-background);color:var(--text-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);cursor:pointer;font-size:.8rem;font-weight:600;transition:all .2s;white-space:nowrap}.time-filter-btn:hover{background-color:#0891b21a;color:var(--primary-color);border-color:#0891b2}.time-filter-btn.active{background-color:#0891b2;color:#fff;border-color:#0891b2}.tag-filters{display:flex;flex-wrap:wrap;gap:var(--spacing-xs);flex:1}.tag-filter-btn{padding:.35rem .75rem;background-color:var(--card-background);color:var(--text-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);cursor:pointer;font-size:.8rem;font-weight:600;transition:all .2s;white-space:nowrap}.tag-filter-btn:hover{background-color:#0891b21a;color:var(--primary-color);border-color:#0891b2}.tag-filter-btn.active{background-color:#0891b2;color:#fff;border-color:#0891b2}.tag-toggle-btn{padding:.35rem .75rem;background-color:var(--card-background);color:var(--text-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);cursor:pointer;font-size:.75rem;font-weight:500;transition:all .2s;white-space:nowrap;display:flex;align-items:center;gap:.25rem}.tag-toggle-btn:hover{background-color:#0891b21a;color:var(--primary-color);border-color:#0891b2}.view-toggle{display:flex;gap:var(--spacing-sm);flex-shrink:0}.view-toggle-btn{padding:var(--spacing-sm);background-color:var(--card-background);color:var(--text-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center}.view-toggle-btn:hover{background-color:#0891b21a;color:var(--primary-color);border-color:#0891b2}.view-toggle-btn.active{background-color:#0891b2;color:#fff;border-color:#0891b2}.recipe-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:var(--spacing-lg)}.recipe-list{display:flex;flex-direction:column;gap:var(--spacing-xs)}.no-results{text-align:center;padding:var(--spacing-2xl);color:var(--text-secondary);font-size:1.125rem}.recipe-card{background:var(--card-background);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);transition:all .3s ease;cursor:pointer;display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--border-color)}.recipe-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-xl);border-color:#0891b2}.recipe-card-image{width:100%;height:220px;overflow:hidden;background-color:#0000004d;flex-shrink:0;position:relative}.recipe-card-image img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.recipe-card:hover .recipe-card-image img{transform:scale(1.08)}.recipe-card-content{padding:var(--spacing-md);flex:1;display:flex;flex-direction:column;gap:var(--spacing-xs)}.recipe-card h2{color:var(--primary-color);margin:0;font-size:1.5rem;font-weight:700;line-height:1.3}.recipe-card .description{color:var(--text-secondary);margin:0;font-size:.95rem;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.recipe-card-content .meta{display:none;gap:var(--spacing-md);margin-top:auto;padding-top:var(--spacing-md);font-size:.875rem;color:var(--text-secondary);flex-wrap:wrap;border-top:1px solid var(--border-color)}.recipe-card .meta-item{display:inline-flex;align-items:center;gap:var(--spacing-xs);white-space:nowrap}.recipe-card .meta-item svg{flex-shrink:0;color:#0891b2}.recipe-tags{display:flex;flex-wrap:wrap;gap:var(--spacing-xs);margin-top:var(--spacing-sm);max-height:3.5rem;overflow:hidden}.recipe-tags.expanded{max-height:none}.tag-label{display:inline-block;padding:.2rem .5rem;background-color:#ffffff0d;color:var(--text-color);border-radius:var(--radius-xl);font-size:.8rem;font-weight:600;white-space:nowrap;border:1px solid var(--border-color);transition:all .2s}.tag-label.clickable{cursor:pointer}.tag-label.clickable:hover{background-color:#0891b233;color:var(--primary-color);border-color:#0891b2}.tag-label.active{background-color:#0891b2;color:#fff;border-color:#0891b2}.tag-more{background-color:var(--border-color);color:var(--text-secondary);cursor:pointer;transition:all .2s}.tag-more:hover{background-color:#0891b2;color:#fff;border-color:#0891b2}.recipe-card-grid .recipe-card-image .meta{display:flex;position:absolute;bottom:0;left:0;right:0;flex-direction:row;gap:var(--spacing-sm);margin:0;padding:var(--spacing-md);background:linear-gradient(to top,rgba(0,0,0,.95) 0%,rgba(0,0,0,.85) 30%,rgba(0,0,0,.4) 70%,transparent 100%);font-size:.85rem;color:#fff;border:none}.recipe-card-grid .recipe-card-image .meta-item{gap:.25rem;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.8)}.recipe-card-grid .recipe-card-image .meta-item svg{width:16px;height:16px;color:#0891b2;filter:drop-shadow(0 1px 3px rgba(0,0,0,1))}.recipe-card-list{flex-direction:row;padding:0;gap:0}.recipe-card-list .recipe-card-image{width:160px;height:120px;flex-shrink:0}.recipe-card-list .recipe-card-content{display:flex;flex-direction:column;gap:.25rem;padding:var(--spacing-sm);flex:1;min-width:0}.recipe-card-list h2{font-size:.95rem;margin:0;line-height:1.2}.recipe-card-list .description{font-size:.85rem;line-height:1.3;margin:0;-webkit-line-clamp:1}.recipe-card-list .recipe-tags{margin-top:var(--spacing-xs);max-height:none;gap:.25rem}.recipe-card-list .tag-label{font-size:.7rem;padding:.15rem .35rem}.recipe-card-list .meta{display:flex;flex-direction:column;gap:var(--spacing-xs);padding:var(--spacing-sm);align-items:flex-end;justify-content:center;font-size:.85rem;color:var(--text-secondary);border:none;flex-shrink:0}.recipe-detail{background:var(--card-background);border-radius:var(--radius-md);padding:0;max-width:1400px;margin:0 auto}.recipe-detail-header{position:relative;width:100%;margin-bottom:var(--spacing-lg);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-md)}.recipe-detail-image{width:100%;height:300px;overflow:hidden;background-color:#0000004d}.recipe-detail-image img{width:100%;height:100%;object-fit:cover}.recipe-detail-overlay{position:absolute;bottom:0;left:0;right:0;padding:var(--spacing-lg);background:linear-gradient(to top,rgba(0,0,0,.85) 0%,rgba(0,0,0,.6) 60%,transparent 100%)}.recipe-detail-overlay h1{color:#fff;margin:0 0 var(--spacing-xs) 0;font-size:1.75rem;font-weight:800;line-height:1.2;text-shadow:0 2px 4px rgba(0,0,0,.3)}.recipe-detail-overlay .recipe-description{font-size:.95rem;color:#fffffff2;margin:0 0 var(--spacing-sm) 0;line-height:1.4;text-shadow:0 1px 2px rgba(0,0,0,.3)}.recipe-detail-overlay .meta{display:flex;gap:var(--spacing-md);margin-top:var(--spacing-sm);font-size:.85rem;flex-wrap:wrap}.recipe-detail-overlay .meta-item{display:flex;align-items:flex-start;gap:var(--spacing-xs);font-weight:500}.recipe-detail-overlay .meta-item svg{flex-shrink:0;color:#ffffffe6;margin-top:.1rem}.recipe-detail-overlay .meta-label{display:flex;flex-direction:column;gap:.1rem}.recipe-detail-overlay .meta-label-text{font-size:.7rem;color:#ffffffbf;font-weight:500;text-transform:uppercase;letter-spacing:.05em}.recipe-detail-overlay .meta-value{font-size:.9rem;color:#fff;font-weight:700;text-shadow:0 1px 2px rgba(0,0,0,.3)}.servings-adjuster{display:flex;align-items:flex-start}.servings-controls{display:flex;align-items:center;gap:.35rem}.servings-preset-btn{display:flex;align-items:center;justify-content:center;min-width:1.75rem;height:1.75rem;padding:0 .4rem;background-color:#ffffff26;border:1px solid rgba(255,255,255,.25);border-radius:var(--radius-md);color:#fffc;cursor:pointer;transition:all .2s;font-size:.8rem;font-weight:600}.servings-preset-btn:hover{background-color:#0891b299;border-color:#0891b2;color:#fff}.servings-preset-btn.active{background-color:#0891b2;border-color:#0891b2;color:#fff}.servings-preset-btn.servings-custom{font-style:italic}.servings-input{width:3rem;height:1.75rem;padding:0 .25rem;background-color:#ffffffe6;border:2px solid #0891b2;border-radius:var(--radius-md);color:var(--background-color);font-size:.8rem;font-weight:600;text-align:center;outline:none}.servings-input::-webkit-outer-spin-button,.servings-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.servings-input[type=number]{-moz-appearance:textfield}.meta-item-tags{flex-basis:100%;margin-top:var(--spacing-xs)}@media (min-width: 900px){.meta-item-tags{flex-basis:auto;margin-top:0}}.detail-tags{display:flex;flex-wrap:wrap;gap:.35rem}.detail-tag{display:inline-block;padding:.2rem .5rem;background-color:#ffffff26;border:1px solid rgba(255,255,255,.25);border-radius:var(--radius-xl);font-size:.75rem;font-weight:600;color:#ffffffe6;text-shadow:0 1px 2px rgba(0,0,0,.3)}.recipe-detail .recipe-content{font-size:.95rem;line-height:1.4;color:var(--text-color);padding:0 var(--spacing-lg) var(--spacing-lg)}.recipe-detail .recipe-content h2{color:var(--primary-color);margin-top:var(--spacing-lg);margin-bottom:var(--spacing-md);font-size:1.5rem;font-weight:700;padding-bottom:var(--spacing-xs);border-bottom:2px solid rgba(8,145,178,.4)}.recipe-detail .recipe-content h2:first-child{margin-top:0}.recipe-detail .recipe-content h3{color:var(--primary-color);margin-top:var(--spacing-md);margin-bottom:var(--spacing-sm);font-size:1.2rem;font-weight:600}.recipe-detail .recipe-content ul,.recipe-detail .recipe-content ol{margin-left:var(--spacing-lg);margin-bottom:var(--spacing-md)}.recipe-detail .recipe-content li{margin-bottom:var(--spacing-xs);padding-left:var(--spacing-xs)}.recipe-detail .recipe-content ul li::marker{color:#0891b2b3}.recipe-detail .recipe-content strong{color:var(--primary-color);font-weight:600}.recipe-detail .recipe-content a{color:#38bdf8;text-decoration:underline;font-weight:500;transition:color .2s}.recipe-detail .recipe-content a:visited{color:#a78bfa}.recipe-detail .recipe-content a:hover{color:#0891b2;text-decoration:none}@media (min-width: 900px){.app{padding:var(--spacing-xl)}.recipe-detail{padding:0;box-shadow:var(--shadow-lg);border:1px solid var(--border-color)}.recipe-detail-header{margin-bottom:var(--spacing-xl)}.recipe-detail-image{height:450px}.recipe-detail-overlay{padding:var(--spacing-2xl)}.recipe-detail-overlay h1{font-size:2.75rem;margin-bottom:var(--spacing-sm)}.recipe-detail-overlay .recipe-description{font-size:1.15rem;line-height:1.5;margin-bottom:var(--spacing-md)}.recipe-detail-overlay .meta{gap:var(--spacing-lg);margin-top:var(--spacing-md);font-size:.95rem}.recipe-detail-overlay .meta-item{gap:var(--spacing-sm)}.recipe-detail-overlay .meta-label-text{font-size:.8rem}.recipe-detail-overlay .meta-value{font-size:1rem}.recipe-detail .recipe-content{display:grid;grid-template-columns:minmax(auto,400px) 1fr;gap:var(--spacing-2xl);font-size:1.05rem;line-height:1.4;padding:0 var(--spacing-2xl) var(--spacing-2xl)}.recipe-detail .recipe-section h2{font-size:1.75rem;margin-top:0;margin-bottom:var(--spacing-lg)}.recipe-detail .recipe-section:nth-child(1){grid-column:1;grid-row:1}.recipe-detail .recipe-section:nth-child(2){grid-column:2;grid-row:1}.recipe-detail .recipe-section:nth-child(n+3){grid-column:1 / -1}.recipe-detail .recipe-content ul,.recipe-detail .recipe-content ol{margin-bottom:var(--spacing-md)}.recipe-detail .recipe-content li{margin-bottom:var(--spacing-sm)}}.recipe-creator{max-width:1400px;margin:0 auto}.recipe-form{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-xl);margin-bottom:var(--spacing-xl)}.form-section{background:var(--card-background);border-radius:var(--radius-lg);padding:var(--spacing-xl);box-shadow:var(--shadow-md);border:1px solid var(--border-color)}.form-section h2{color:var(--primary-color);margin-bottom:var(--spacing-lg);font-size:1.5rem;font-weight:700;padding-bottom:var(--spacing-sm);border-bottom:2px solid var(--border-color)}.form-group{margin-bottom:var(--spacing-lg)}.form-group:last-child{margin-bottom:0}.form-group label{display:block;margin-bottom:var(--spacing-sm);font-weight:600;color:var(--primary-color);font-size:.95rem}.form-group input,.form-group textarea,.form-group select{width:100%;padding:.875rem 1rem;font-size:1rem;border:2px solid var(--border-color);border-radius:var(--radius-md);font-family:inherit;transition:all .2s;background-color:var(--background-color);color:var(--text-color)}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:#0891b2;box-shadow:0 0 0 3px #0891b240}.form-group textarea{resize:vertical;min-height:120px;font-family:Courier New,monospace;font-size:.95rem;line-height:1.6}.output-section{background:var(--card-background);border-radius:var(--radius-lg);padding:var(--spacing-xl);box-shadow:var(--shadow-md);border:1px solid var(--border-color)}.output-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-sm);border-bottom:2px solid var(--border-color)}.output-header h2{color:var(--primary-color);font-size:1.5rem;font-weight:700}.copy-button{padding:.75rem 1.5rem;background-color:#38a169;color:#fff;border:none;border-radius:var(--radius-md);cursor:pointer;font-size:.95rem;font-weight:600;transition:all .2s;box-shadow:var(--shadow-sm)}.copy-button:hover:not(:disabled){background-color:#2f855a;box-shadow:var(--shadow-md);transform:translateY(-1px)}.copy-button:disabled{opacity:.7;cursor:not-allowed}.markdown-output{width:100%;padding:var(--spacing-lg);font-family:Courier New,monospace;font-size:.9rem;border:2px solid var(--border-color);border-radius:var(--radius-md);background-color:#1a1f2e;color:var(--text-color);resize:vertical;min-height:450px;line-height:1.6}.filename-suggestion{margin-top:var(--spacing-lg);padding:var(--spacing-lg);background:linear-gradient(135deg,var(--card-background) 0%,#374151 100%);border-radius:var(--radius-md);font-size:1rem;border:1px solid var(--border-color)}.filename-suggestion strong{color:var(--primary-color);font-weight:700}.filename-suggestion span{font-family:Courier New,monospace;color:#0891b2;font-weight:600}.instructions-accordion{margin-top:var(--spacing-xl);border:1px solid var(--border-color);border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-sm)}.accordion-header{width:100%;display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-lg);background-color:#0891b21a;border:none;border-left:4px solid #0891b2;cursor:pointer;transition:all .2s;text-align:left}.accordion-header:hover{background-color:#0891b226}.accordion-header h3{color:var(--primary-color);font-size:1.125rem;font-weight:700;margin:0;flex:1}.accordion-header svg{color:#0891b2;flex-shrink:0;transition:transform .2s}.accordion-content{padding:var(--spacing-xl);background-color:var(--card-background);border-top:1px solid var(--border-color);animation:slideDown .2s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.accordion-content ol{margin-left:var(--spacing-xl);line-height:1.8}.accordion-content li{margin-bottom:var(--spacing-md)}.accordion-content code{background-color:#0000004d;padding:.25rem .5rem;border-radius:var(--radius-sm);font-family:Courier New,monospace;font-size:.9rem;color:#0891b2;border:1px solid var(--border-color)}.accordion-content ul{margin-top:var(--spacing-sm);margin-left:var(--spacing-xl)}.accordion-content strong{color:var(--primary-color)}@media (max-width: 1024px){.recipe-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.recipe-form{grid-template-columns:1fr}.recipe-list .recipe-card{grid-template-columns:100px 1fr;gap:var(--spacing-sm)}.recipe-list .recipe-card-image{width:100px;height:70px;position:relative}.recipe-list .meta{font-size:.6rem;padding:3px}.recipe-list .meta-item svg{width:11px;height:11px}.recipe-list .meta-value{font-size:.6rem}}@media (max-width: 768px){.app{padding:var(--spacing-xl) var(--spacing-md)}.recipe-grid{grid-template-columns:1fr;gap:var(--spacing-md)}.recipe-detail{padding:var(--spacing-lg)}.recipe-detail h1{font-size:2rem}.recipe-detail .meta{gap:var(--spacing-lg)}.form-section,.output-section{padding:var(--spacing-lg)}}@media (max-width: 600px){.header-content{padding:var(--spacing-md);flex-wrap:wrap;gap:var(--spacing-md)}.header-title{font-size:1.5rem}.header-search{order:3;width:100%;max-width:100%}.header-nav{order:2;margin-left:auto}}@media (max-width: 480px){.recipe-card h2{font-size:1.25rem}.recipe-detail h1{font-size:1.75rem}.recipe-detail .recipe-content h2{font-size:1.5rem}.recipe-list .recipe-card{grid-template-columns:80px 1fr;gap:var(--spacing-xs)}.recipe-list .recipe-card-image{width:80px;height:60px;position:relative}.recipe-list .recipe-card h2{font-size:.95rem}.recipe-list .description{font-size:.8rem}.recipe-list .meta{font-size:.55rem;padding:2px;gap:1px}.recipe-list .meta-item svg{width:10px;height:10px}.recipe-list .meta-value{font-size:.55rem}}.cooking-mode-btn{display:flex;align-items:center;gap:.5rem;padding:.6rem 1rem;background-color:#0891b2;color:#fff;border:none;border-radius:var(--radius-lg);cursor:pointer;font-size:.9rem;font-weight:600;transition:all .2s;margin-bottom:var(--spacing-sm)}.cooking-mode-btn:hover{background-color:#0e7490;transform:translateY(-1px);box-shadow:var(--shadow-md)}.cooking-mode-btn-container{position:relative;display:inline-block;margin-bottom:var(--spacing-sm)}.cooking-mode-btn-container .cooking-mode-btn{margin-bottom:0}.cooking-mode-hint{position:absolute;top:50%;left:calc(100% + .75rem);transform:translateY(-50%);display:flex;align-items:flex-start;gap:.5rem;padding:.75rem;background-color:var(--card-background);border:1px solid #0891b2;border-radius:var(--radius-md);box-shadow:var(--shadow-lg);font-size:.85rem;color:var(--text-color);max-width:280px;z-index:200;animation:hintFadeIn .3s ease-out}.cooking-mode-hint:before{content:"";position:absolute;top:50%;right:100%;transform:translateY(-50%);border:6px solid transparent;border-right-color:#0891b2}.cooking-mode-hint p{margin:0;flex:1;line-height:1.4}.cooking-mode-hint-close{flex-shrink:0;display:flex;align-items:center;justify-content:center;padding:.15rem;background:transparent;border:none;color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-sm);transition:all .2s}.cooking-mode-hint-close:hover{background-color:#ffffff1a;color:var(--text-color)}@keyframes hintFadeIn{0%{opacity:0;transform:translateY(-50%) translate(-8px)}to{opacity:1;transform:translateY(-50%) translate(0)}}.cooking-mode-fab{position:fixed;bottom:2rem;right:2rem;width:56px;height:56px;border-radius:50%;background-color:#0891b2;color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-lg);z-index:50;transition:all .3s ease;opacity:0;transform:scale(.8) translateY(20px);pointer-events:none}.cooking-mode-fab.visible{opacity:1;transform:scale(1) translateY(0);pointer-events:auto}.cooking-mode-fab:hover{background-color:#0e7490;transform:scale(1.1);box-shadow:var(--shadow-xl)}.cooking-mode-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:var(--background-color);z-index:1000;display:flex;flex-direction:column;animation:cookingModeIn .3s ease-out}@keyframes cookingModeIn{0%{opacity:0}to{opacity:1}}.cooking-mode-header{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg);background-color:var(--card-background);border-bottom:1px solid var(--border-color);flex-shrink:0}.cooking-mode-close{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:transparent;border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;transition:all .2s;flex-shrink:0}.cooking-mode-close:hover{background-color:#fc81811a;border-color:var(--accent-color);color:var(--accent-color)}.cooking-mode-title{flex:1;font-size:1.25rem;font-weight:700;color:var(--primary-color);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cooking-mode-reset{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:transparent;border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;transition:all .2s;font-size:.85rem;font-weight:500;flex-shrink:0}.cooking-mode-reset:hover{background-color:#fc81811a;border-color:var(--accent-color);color:var(--accent-color)}.cooking-mode-reset-text{display:none}.cooking-mode-content{flex:1;display:flex;flex-direction:column;overflow:hidden;min-height:0}.cooking-mode-ingredients{background-color:var(--card-background);border-bottom:1px solid var(--border-color);flex-shrink:0;max-height:200px;overflow:hidden;transition:max-height .3s ease}.cooking-mode-ingredients.expanded{max-height:50vh}.cooking-mode-ingredients-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;padding:var(--spacing-md) var(--spacing-lg);background:transparent;border:none;cursor:pointer;text-align:left}.cooking-mode-ingredients-toggle h2{font-size:1rem;font-weight:700;color:var(--primary-color);margin:0}.cooking-mode-ingredients-toggle svg{color:var(--text-secondary);transition:transform .3s ease}.cooking-mode-ingredients.expanded .cooking-mode-ingredients-toggle svg{transform:rotate(180deg)}.cooking-mode-ingredients-list{padding:0 var(--spacing-lg) var(--spacing-md);overflow-y:auto;max-height:140px}.cooking-mode-ingredients.expanded .cooking-mode-ingredients-list{max-height:calc(50vh - 60px)}.cooking-mode-instructions{flex:1;overflow-y:auto;padding:var(--spacing-lg);min-height:0}.cooking-mode-instructions h2{font-size:1.25rem;font-weight:700;color:var(--primary-color);margin:0 0 var(--spacing-md) 0;padding-bottom:var(--spacing-sm);border-bottom:2px solid rgba(8,145,178,.4)}.cooking-mode-footer{padding:var(--spacing-md) var(--spacing-lg);background-color:var(--card-background);border-top:1px solid var(--border-color);flex-shrink:0}.cooking-mode-progress{display:flex;flex-direction:column;gap:var(--spacing-sm)}.cooking-mode-progress-text{font-size:.85rem;font-weight:600;color:var(--text-secondary)}.cooking-mode-progress-bar{height:8px;background-color:var(--border-color);border-radius:4px;overflow:hidden}.cooking-mode-progress-fill{height:100%;background-color:var(--success-color);border-radius:4px;transition:width .3s ease}.checkable-list{list-style:none;margin:0;padding:0}.checkable-item{margin-bottom:var(--spacing-xs)}.checkable-button{display:flex;align-items:flex-start;gap:var(--spacing-sm);width:100%;padding:var(--spacing-sm) var(--spacing-md);background:transparent;border:1px solid transparent;border-radius:var(--radius-md);cursor:pointer;text-align:left;transition:all .2s;color:var(--text-color);font-size:.95rem;line-height:1.5}.checkable-button:hover{background-color:#ffffff0d;border-color:var(--border-color)}.checkable-checkbox{display:flex;align-items:center;justify-content:center;width:22px;height:22px;border:2px solid var(--border-color);border-radius:var(--radius-sm);flex-shrink:0;margin-top:2px;transition:all .2s;background-color:transparent}.checkable-item.checked .checkable-checkbox{background-color:var(--success-color);border-color:var(--success-color);color:#fff}.checkable-text{flex:1;display:flex;gap:.5rem}.checkable-number{font-weight:700;color:#0891b2;min-width:1.5rem}.checkable-item.checked .checkable-text{text-decoration:line-through;color:var(--text-secondary)}.checkable-item.current{background-color:#0891b21a;border-radius:var(--radius-md)}.checkable-item.current .checkable-button{border-color:#0891b2}.checkable-item.current .checkable-number{color:#0891b2}@media (min-width: 900px){.cooking-mode-header{padding:var(--spacing-md) var(--spacing-xl)}.cooking-mode-title{font-size:1.5rem}.cooking-mode-reset-text{display:inline}.cooking-mode-content{flex-direction:row}.cooking-mode-ingredients{width:350px;max-height:none;border-bottom:none;border-right:1px solid var(--border-color);display:flex;flex-direction:column}.cooking-mode-ingredients.expanded{max-height:none}.cooking-mode-ingredients-toggle{cursor:default;padding:var(--spacing-lg) var(--spacing-xl)}.cooking-mode-ingredients-toggle h2{font-size:1.25rem}.cooking-mode-ingredients-toggle svg{display:none}.cooking-mode-ingredients-list{flex:1;max-height:none;padding:0 var(--spacing-xl) var(--spacing-lg);overflow-y:auto}.cooking-mode-ingredients.expanded .cooking-mode-ingredients-list{max-height:none}.cooking-mode-instructions{flex:1;padding:var(--spacing-lg) var(--spacing-xl)}.cooking-mode-instructions h2{font-size:1.5rem}.cooking-mode-footer{padding:var(--spacing-md) var(--spacing-xl)}.cooking-mode-progress{flex-direction:row;align-items:center;justify-content:center;gap:var(--spacing-lg)}.cooking-mode-progress-bar{flex:1;max-width:400px}.checkable-button{font-size:1rem;padding:var(--spacing-sm) var(--spacing-lg)}}.random-recipe-dialog-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--spacing-md);animation:backdropFadeIn .2s ease-out}@keyframes backdropFadeIn{0%{opacity:0}to{opacity:1}}.random-recipe-dialog{width:100%;max-width:500px;background-color:var(--card-background);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);border:1px solid var(--border-color);animation:dialogSlideIn .2s ease-out}@keyframes dialogSlideIn{0%{opacity:0;transform:scale(.95) translateY(-10px)}to{opacity:1;transform:scale(1) translateY(0)}}.random-recipe-dialog-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--border-color)}.random-recipe-dialog-header h2{margin:0;font-size:1.25rem;font-weight:700;color:var(--primary-color)}.random-recipe-dialog-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:transparent;border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;transition:all .2s}.random-recipe-dialog-close:hover{background-color:#fc81811a;border-color:var(--accent-color);color:var(--accent-color)}.random-recipe-dialog-content{padding:var(--spacing-lg)}.random-recipe-dialog-hint{margin:0 0 var(--spacing-md) 0;font-size:.9rem;color:var(--text-secondary)}.random-recipe-tags{display:flex;flex-wrap:wrap;gap:var(--spacing-xs);margin-bottom:var(--spacing-md)}.random-recipe-count{margin:0 0 var(--spacing-md) 0;font-size:.85rem;color:var(--text-secondary)}.random-recipe-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm)}.random-recipe-btn:disabled{opacity:.5;cursor:not-allowed}.random-recipe-result{text-align:center}.random-recipe-image{width:100%;aspect-ratio:16 / 9;border-radius:var(--radius-md);overflow:hidden;background-color:#0000004d;margin-bottom:var(--spacing-md)}.random-recipe-image img{width:100%;height:100%;object-fit:cover}.random-recipe-image-placeholder{width:100%;height:100%;background-color:#0000004d}.random-recipe-result h3{margin:0 0 var(--spacing-sm) 0;font-size:1.5rem;font-weight:700;color:var(--primary-color)}.random-recipe-description{margin:0 0 var(--spacing-lg) 0;font-size:.95rem;color:var(--text-secondary);line-height:1.5}.random-recipe-actions{display:flex;gap:var(--spacing-sm);justify-content:center;margin-bottom:var(--spacing-md)}.btn-secondary{padding:.5rem 1rem;background-color:transparent;color:var(--text-color);border:1px solid var(--border-color);border-radius:var(--radius-md);cursor:pointer;font-size:.9rem;font-weight:600;transition:all .2s;display:inline-flex;align-items:center;gap:var(--spacing-xs);text-decoration:none}.btn-secondary:hover{background-color:#0891b21a;border-color:#0891b2;color:var(--primary-color)}.random-recipe-change-filter{background:transparent;border:none;color:var(--text-secondary);font-size:.85rem;cursor:pointer;text-decoration:underline;transition:color .2s}.random-recipe-change-filter:hover{color:var(--primary-color)}.random-recipe-no-results{text-align:center}.random-recipe-no-results p{margin:0 0 var(--spacing-lg) 0;color:var(--text-secondary)}.features-dialog-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--spacing-md);animation:backdropFadeIn .2s ease-out}.features-dialog{width:100%;max-width:480px;background-color:var(--card-background);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);border:1px solid var(--border-color);animation:dialogSlideIn .2s ease-out}.features-dialog-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--border-color)}.features-dialog-header h2{margin:0;font-size:1.25rem;font-weight:700;color:var(--primary-color)}.features-dialog-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:transparent;border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;transition:all .2s}.features-dialog-close:hover{background-color:#fc81811a;border-color:var(--accent-color);color:var(--accent-color)}.features-dialog-content{padding:var(--spacing-lg)}.features-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--spacing-md)}.feature-item{display:flex;gap:var(--spacing-md);align-items:flex-start}.feature-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;background-color:#0891b226;border-radius:var(--radius-md);color:#0891b2;flex-shrink:0}.feature-text h3{margin:0 0 var(--spacing-xs) 0;font-size:1rem;font-weight:600;color:var(--primary-color)}.feature-text p{margin:0;font-size:.9rem;color:var(--text-secondary);line-height:1.5}
