:root{--color-bg: #fafafa;--color-surface: #ffffff;--color-text: #1a1a1a;--color-text-muted: #666666;--color-border: #e0e0e0;--color-primary: #2563eb;--color-primary-hover: #1d4ed8;--color-danger: #dc2626;--color-danger-hover: #b91c1c;--color-success: #16a34a;--radius: 8px;--shadow: 0 1px 3px rgba(0, 0, 0, .1)}*{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--color-bg);color:var(--color-text);line-height:1.5}.layout{min-height:100vh;display:flex;flex-direction:column}.header{background:var(--color-surface);border-bottom:1px solid var(--color-border);padding:1rem 2rem;display:flex;align-items:center;gap:2rem}.logo{text-decoration:none;color:inherit}.logo h1{font-size:1.25rem;font-weight:600;margin:0}.btn-check{color:var(--color-success);border:none;background:none;padding:.25rem}.btn-check:hover{background:#f0fdf4}.nav{display:flex;gap:1rem}.nav a{color:var(--color-text-muted);text-decoration:none;padding:.5rem 1rem;border-radius:var(--radius)}.nav a:hover{background:var(--color-bg)}.nav a.active{color:var(--color-primary);background:#eff6ff}.header-right{margin-left:auto;display:flex;align-items:center;gap:1rem}.inbox-link{color:var(--color-text-muted);text-decoration:none;font-size:.75rem;padding:.25rem .5rem;border-radius:var(--radius);background:var(--color-bg);border:1px dashed var(--color-border)}.inbox-link:hover{background:var(--color-border)}.inbox-link.active{color:var(--color-primary);border-color:var(--color-primary);border-style:solid}.main{flex:1;padding:2rem;max-width:1200px;margin:0 auto;width:100%}.page-header{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem}.page-header h2{flex:1}.header-actions{display:flex;gap:.5rem}button{font-family:inherit;font-size:.875rem;padding:.5rem 1rem;border-radius:var(--radius);border:1px solid var(--color-border);background:var(--color-surface);cursor:pointer;transition:all .15s}button:hover{background:var(--color-bg)}.btn-primary{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.btn-primary:hover{background:var(--color-primary-hover)}.btn-danger{color:var(--color-danger);border-color:var(--color-danger)}.btn-danger:hover{background:#fef2f2}.btn-back{padding:.5rem .75rem}.btn-small{padding:.25rem .5rem;font-size:.75rem}.btn-icon{padding:.25rem .5rem;font-size:1.125rem;line-height:1;background:transparent;border:none;color:var(--color-text-muted);cursor:pointer}.btn-icon:hover{color:var(--color-text);background:transparent}.recipes-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem}.status-tabs{display:inline-flex;background:var(--color-border);border-radius:var(--radius);padding:3px;gap:2px}.status-tabs button{border:none;background:transparent;padding:.4rem 1rem;color:var(--color-text-muted);border-radius:calc(var(--radius) - 2px);font-weight:500;font-size:.8125rem}.status-tabs button:hover{color:var(--color-text);background:transparent}.status-tabs button.active{background:var(--color-surface);color:var(--color-text);box-shadow:0 1px 2px #0000001a}.tabs{display:flex;gap:.5rem;margin-bottom:1.5rem;border-bottom:1px solid var(--color-border);padding-bottom:.5rem}.tabs button{border:none;background:none;padding:.5rem 1rem;color:var(--color-text-muted)}.tabs button:hover{color:var(--color-text);background:none}.tabs button.active{color:var(--color-primary);border-bottom:2px solid var(--color-primary);margin-bottom:-.5rem;padding-bottom:calc(.5rem - 2px)}.recipe-list,.plan-list{list-style:none}.recipe-item,.plan-item{display:flex;align-items:center;gap:1rem;padding:1rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);margin-bottom:.5rem}.recipe-title,.plan-title{flex:1;color:var(--color-text);text-decoration:none;font-weight:500}.recipe-title:hover,.plan-title:hover{color:var(--color-primary)}.recipe-actions{display:flex;gap:.5rem}.plan-dates{color:var(--color-text-muted);font-size:.875rem}.calendar-header{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem}.calendar-nav{display:inline-flex;align-items:center;gap:2px;background:var(--color-border);border-radius:var(--radius);padding:3px;position:relative}.calendar-nav button{display:flex;align-items:center;justify-content:center;border:none;background:transparent;padding:.4rem .75rem;color:var(--color-text-muted);border-radius:calc(var(--radius) - 2px);font-weight:500;font-size:.875rem;min-width:2.25rem}.calendar-nav button:hover{color:var(--color-text);background:var(--color-surface)}.calendar-date-label{position:relative;padding:.4rem 1rem;color:var(--color-text);font-weight:600;cursor:pointer;white-space:nowrap;border-radius:calc(var(--radius) - 2px)}.calendar-date-label:hover{background:var(--color-surface)}.calendar-date-input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;width:100%;height:100%;cursor:pointer;-webkit-appearance:none}.btn-autofill{display:flex;align-items:center;justify-content:center;padding:.4rem .5rem;line-height:1;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);color:var(--color-text-muted);cursor:pointer}.btn-autofill:hover{background:var(--color-bg)}.day-card.day-today .day-header{background:#dbeafe}.day-card.day-past{opacity:.7}.day-card.day-selecting{outline:2px solid var(--color-primary);outline-offset:-1px}.day-card.day-selecting:not(.day-today) .day-header{background:#eff6ff}.calendar-body{display:flex;flex-direction:column;gap:1.5rem}@media (min-width: 768px){.calendar-body{flex-direction:row;align-items:flex-start}.calendar-body .week-grid{flex:3;min-width:0}.calendar-picker-column{flex:2;min-width:0}.calendar-picker{position:sticky;top:1rem}}.calendar-picker{background:var(--color-surface);border:2px solid var(--color-primary);border-radius:var(--radius);padding:1rem}.calendar-picker-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.calendar-picker-header h3{margin:0;font-size:1rem}.btn-close{padding:.25rem .5rem;font-size:1.25rem;line-height:1;background:transparent;border:none;cursor:pointer;color:var(--color-text-muted)}.btn-close:hover{color:var(--color-text)}.empty-state{text-align:center;padding:3rem;color:var(--color-text-muted)}.empty-state .hint{font-size:.875rem;margin-top:.5rem}.loading{text-align:center;padding:2rem;color:var(--color-text-muted)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;padding:2rem}.modal{background:var(--color-surface);border-radius:var(--radius);padding:1.5rem;max-width:600px;width:100%;max-height:80vh;overflow-y:auto}.modal h3{margin-bottom:1rem}.modal textarea{width:100%;font-family:monospace;font-size:.875rem;padding:.75rem;border:1px solid var(--color-border);border-radius:var(--radius);resize:vertical}.modal-actions{display:flex;gap:.5rem;justify-content:flex-end;margin-top:1rem}.recipe-picker{max-width:500px}.freeform-input{display:flex;gap:.5rem;margin-bottom:1rem}.freeform-input input{flex:1;padding:.5rem;border:1px solid var(--color-border);border-radius:var(--radius);font-size:.9rem}.freeform-input input:focus{outline:none;border-color:var(--color-primary)}.picker-filters{display:flex;gap:.5rem;margin-bottom:1rem}.picker-filters button{padding:.25rem .75rem}.picker-filters button.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.picker-list{list-style:none;max-height:300px;overflow-y:auto;border:1px solid var(--color-border);border-radius:var(--radius)}.picker-list li button{width:100%;text-align:left;border:none;border-bottom:1px solid var(--color-border);border-radius:0;display:flex;justify-content:space-between}.picker-list li:last-child button{border-bottom:none}.status-badge{font-size:.75rem;color:var(--color-text-muted)}.recipe-combobox{display:flex;flex-direction:column;gap:.5rem}.combobox-input{width:100%;padding:.75rem;border:1px solid var(--color-border);border-radius:var(--radius);font-size:1rem}.combobox-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px #2563eb1a}.combobox-list{list-style:none;height:300px;overflow-y:auto;border:1px solid var(--color-border);border-radius:var(--radius);margin:0;padding:0}.combobox-option{display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem;cursor:pointer;border-bottom:1px solid var(--color-border)}.combobox-option:last-child{border-bottom:none}.combobox-option:hover,.combobox-option.highlighted{background:var(--color-bg)}.combobox-option.highlighted{background:#eff6ff}.option-note{background:#fefce8;font-style:italic}.option-note.highlighted{background:#fef08a}.option-note.disabled{opacity:.5;cursor:default;pointer-events:none}.option-note .note-label{color:var(--color-text-muted)}.week-grid{display:flex;flex-direction:column;gap:.5rem;max-width:600px}.day-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:row;align-items:stretch}.day-header{background:var(--color-bg);padding:.75rem;display:flex;flex-direction:column;justify-content:center;align-items:center;min-width:80px;border-right:1px solid var(--color-border)}.day-name{font-weight:600;font-size:1rem}.day-date{font-size:.75rem;color:var(--color-text-muted)}.day-content{padding:.5rem .75rem;flex:1;display:flex;flex-direction:column;gap:.375rem;justify-content:center}.day-empty{display:flex;flex-direction:row;gap:.5rem;align-items:center}.day-recipe{display:flex;flex-direction:row;align-items:center;gap:.25rem}.day-recipe .recipe-name{cursor:pointer;font-weight:500;font-size:.9rem;flex:1}.day-recipe .recipe-name:hover{color:var(--color-primary)}.btn-reorder,.day-recipe .btn-remove{padding:.25rem;font-size:1rem;line-height:1;background:transparent;border:none;cursor:pointer;color:var(--color-text-muted);opacity:.5}.btn-reorder:hover,.day-recipe .btn-remove:hover{opacity:1;color:var(--color-text)}.day-recipe .btn-remove:hover{color:var(--color-danger)}.day-actions{display:flex;gap:.5rem;align-items:center}.day-skip{display:flex;flex-direction:row;align-items:center;gap:.5rem}.skip-note{color:var(--color-text-muted);font-style:italic;font-size:.875rem}.day-note{display:flex;flex-direction:row;align-items:center;gap:.25rem}.day-note .note-text{color:var(--color-text-muted);font-style:italic;font-size:.9rem;flex:1}.day-note .btn-remove{padding:.25rem;font-size:1rem;line-height:1;background:transparent;border:none;cursor:pointer;color:var(--color-text-muted);opacity:.5}.day-note .btn-remove:hover{opacity:1;color:var(--color-danger)}.recipe-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}.recipe-toolbar .recipe-tags{margin-bottom:0}.recipe-toolbar-actions{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.btn-icon-danger:hover{color:var(--color-danger)}.edit-mode{display:flex;flex-direction:column;gap:1rem}.edit-mode textarea{font-family:monospace;font-size:.875rem;padding:1rem;border:1px solid var(--color-border);border-radius:var(--radius);resize:vertical}.edit-actions{display:flex;gap:.5rem;justify-content:flex-end}.recipes-page{position:relative}.recipes-page.drag-over:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#2563eb1a;border:2px dashed var(--color-primary);border-radius:var(--radius);pointer-events:none}.drop-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#2563ebe6;display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.5rem;pointer-events:none}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem}.login-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:2rem;max-width:400px;width:100%;text-align:center}.login-card h1{margin-bottom:.5rem}.login-card p{color:var(--color-text-muted);margin-bottom:1.5rem}.login-card form{display:flex;flex-direction:column;gap:1rem}.login-card input{padding:.75rem;border:1px solid var(--color-border);border-radius:var(--radius);font-size:1rem}.login-card .message{margin-top:1rem;color:var(--color-success)}.login-hint{margin-top:.5rem;font-size:.85rem;opacity:.6}.auto-fill-modal{max-width:400px}.modal-hint{color:var(--color-text-muted);margin-bottom:1.5rem}.auto-fill-inputs{display:flex;flex-direction:column;gap:1rem}.auto-fill-inputs label{display:flex;align-items:center;gap:.75rem}.auto-fill-inputs label span:first-child{min-width:100px;font-weight:500}.auto-fill-inputs input[type=number]{width:60px;padding:.5rem;border:1px solid var(--color-border);border-radius:var(--radius);font-size:1rem;text-align:center}.auto-fill-inputs .available{color:var(--color-text-muted);font-size:.875rem}.warning{background:#fef3c7;color:#92400e;padding:.75rem;border-radius:var(--radius);font-size:.875rem;margin-top:1rem}.snooze-modal{max-width:320px}.snooze-options{display:flex;flex-direction:column;gap:.5rem}.snooze-options button{text-align:left}.snooze-notice{margin-top:1rem;padding:.75rem;background:#fef3c7;color:#92400e;border-radius:var(--radius);font-size:.875rem}.snoozed-badge{font-size:.75rem;color:var(--color-text-muted);margin-left:.5rem}.import-modal{max-width:500px}.import-tabs{display:flex;gap:.5rem;margin-bottom:1rem;border-bottom:1px solid var(--color-border);padding-bottom:.5rem}.import-tabs button{padding:.5rem 1rem;border:none;background:none;cursor:pointer;color:var(--color-text-muted);border-bottom:2px solid transparent;margin-bottom:-.5rem;padding-bottom:calc(.5rem + 1px)}.import-tabs button.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.import-tabs .tab-url{order:1}.import-tabs .tab-photo{order:2}.import-tabs .tab-markdown{order:3}.import-tabs .tab-text{order:4}@media (max-width: 640px){.import-tabs .tab-photo{order:1}.import-tabs .tab-url{order:2}.import-tabs .tab-markdown{order:3}.import-tabs .tab-text{order:4}}.import-camera,.import-text,.import-url{min-height:200px;display:flex;flex-direction:column;gap:1rem}.import-camera{align-items:center;justify-content:center}.import-text textarea{width:100%;padding:.75rem;border:1px solid var(--color-border);border-radius:var(--radius);font-family:inherit;font-size:.875rem;resize:vertical}.import-url p{color:var(--color-text-muted);margin:0}.import-url input[type=url]{width:100%;padding:.75rem;border:1px solid var(--color-border);border-radius:var(--radius);font-family:inherit;font-size:1rem}.import-url input[type=url]:focus{outline:none;border-color:var(--color-primary)}.image-preview-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:.5rem;width:100%}.image-preview{position:relative;aspect-ratio:1;border-radius:var(--radius);overflow:hidden}.image-preview img{width:100%;height:100%;object-fit:cover}.image-preview .remove-image{position:absolute;top:4px;right:4px;width:20px;height:20px;padding:0;border:none;border-radius:50%;background:#0009;color:#fff;font-size:12px;cursor:pointer;display:flex;align-items:center;justify-content:center}.import-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;gap:1rem}.spinner{width:40px;height:40px;border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.import-preview textarea{width:100%;padding:.75rem;border:1px solid var(--color-border);border-radius:var(--radius);font-family:monospace;font-size:.8rem;resize:vertical}.import-error{color:var(--color-danger);font-size:.875rem;margin-top:.5rem}.search-bar{display:flex;gap:.5rem;margin-bottom:1rem}.search-bar input{flex:1;padding:.5rem .75rem;border:1px solid var(--color-border);border-radius:var(--radius);font-size:.875rem}.search-bar input:focus{outline:none;border-color:var(--color-primary)}.clear-search{padding:.5rem .75rem}.recipe-tags{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin-bottom:1rem}.tag{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .5rem;background:#e0e7ff;color:#3730a3;border-radius:999px;font-size:.75rem}.tag-remove{display:inline-flex;align-items:center;justify-content:center;width:1rem;height:1rem;padding:0;border:none;background:transparent;color:#6366f1;font-size:.75rem;cursor:pointer;border-radius:50%}.tag-remove:hover{background:#c7d2fe}.tag-add{display:flex;gap:.25rem}.tag-add input{width:100px;padding:.25rem .5rem;border:1px solid var(--color-border);border-radius:var(--radius);font-size:.75rem}.tag-add button{padding:.25rem .5rem;font-size:.75rem}.tag-add button:disabled{opacity:.5;cursor:not-allowed}.tag-filter{display:flex;flex-wrap:wrap;gap:.25rem;margin-bottom:1rem}.tag-filter .tag{cursor:pointer}.tag-filter .tag.active{background:#3730a3;color:#fff}@media (max-width: 640px){.calendar-page{margin:0 -1rem;padding:0;overflow-x:hidden}.calendar-header{padding:0 1rem;justify-content:space-between}.calendar-nav{min-width:0}.calendar-nav button{padding:.4rem .35rem;min-width:unset}.calendar-date-label{padding:.4rem .5rem}.calendar-body .week-grid{gap:0}.calendar-body .day-card{border-radius:0;border-left:none;border-right:none;margin-top:-1px}.calendar-picker{border-radius:0;border-left:none;border-right:none}.day-card.day-selecting{outline:none}.header{padding:.75rem 1rem;flex-wrap:wrap;gap:.75rem}.nav{order:3;width:100%;justify-content:center}.nav a{padding:.5rem .75rem;font-size:.875rem}.header-right{margin-left:auto}.main{padding:1rem}.recipe-toolbar{flex-wrap:wrap}.recipe-toolbar-actions{width:100%;justify-content:space-between}.recipe-actions{gap:0}.modal-backdrop{padding:0;align-items:flex-end}.modal{border-radius:var(--radius) var(--radius) 0 0;max-height:90vh;width:100%;max-width:100%}.modal textarea{min-height:200px}.search-bar{flex-direction:column}.search-bar input{width:100%}.recipe-tags{gap:.375rem}.tag-add{width:100%}.tag-add input{flex:1;width:auto}.login-card{padding:1.5rem}.auto-fill-inputs label{flex-wrap:wrap}.auto-fill-inputs label span:first-child{min-width:auto;width:100%;margin-bottom:.25rem}.picker-list{max-height:40vh}}.import-inbox,.import-inbox-detail{max-width:1200px}.import-inbox .page-header{flex-direction:column;align-items:flex-start}.import-inbox .hint{color:var(--color-text-muted);font-size:.875rem;margin-top:.25rem}.import-list{list-style:none}.import-item{display:flex;align-items:center;gap:1rem;padding:1rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);margin-bottom:.5rem}.import-info{flex:1;display:flex;flex-direction:column;gap:.25rem}.import-title{font-weight:500}.import-meta{font-size:.75rem;color:var(--color-text-muted)}.import-meta a{color:var(--color-primary)}.error-banner{background:#fef2f2;border:1px solid #fecaca;color:var(--color-danger);padding:.75rem 1rem;border-radius:var(--radius);margin-bottom:1rem;display:flex;justify-content:space-between;align-items:center}.error-banner button{background:none;border:none;color:var(--color-danger);text-decoration:underline;cursor:pointer;padding:0}.detail-header{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}.detail-header h2{flex:1;font-size:1.25rem}.detail-meta{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1rem;padding:.75rem 1rem;background:var(--color-bg);border-radius:var(--radius)}.meta-item{font-size:.875rem}.meta-item a{color:var(--color-primary)}.source-images{display:flex;gap:.5rem;margin-bottom:1rem;overflow-x:auto}.source-image{max-height:200px;border-radius:var(--radius)}.sxs-editor{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem}@media (max-width: 768px){.sxs-editor{grid-template-columns:1fr}}.sxs-panel{display:flex;flex-direction:column;gap:.5rem}.sxs-panel h3{font-size:.875rem;color:var(--color-text-muted)}.recipe-textarea{width:100%;min-height:400px;padding:.75rem;border:1px solid var(--color-border);border-radius:var(--radius);font-family:monospace;font-size:.8rem;resize:vertical}.recipe-preview{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:1rem;min-height:400px;overflow-y:auto}.diagnostics{margin-bottom:.75rem}.diagnostic{display:flex;gap:.5rem;padding:.5rem .75rem;font-size:.75rem;font-family:monospace;border-radius:var(--radius);margin-bottom:.25rem}.diagnostic.error{background:#fef2f2;color:#991b1b}.diagnostic.warning{background:#fffbeb;color:#92400e}.diagnostic-location{flex-shrink:0;opacity:.7}.diagnostic-code{flex-shrink:0;font-weight:600}.diagnostic-message{flex:1}.detail-actions{display:flex;gap:.5rem;justify-content:flex-end}.discard-modal{max-width:400px}.discard-modal p{color:var(--color-text-muted);margin-bottom:1rem}.update-checkbox{display:flex;align-items:center;gap:.5rem;padding:.75rem;background:#eff6ff;border-radius:var(--radius);margin-bottom:1rem;cursor:pointer}.update-checkbox input{width:1rem;height:1rem}.menu-list{list-style:none}.menu-item{display:flex;align-items:center;gap:1rem;padding:1rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);margin-bottom:.5rem}.menu-title{flex:1;color:var(--color-text);text-decoration:none;font-weight:500}.menu-title:hover{color:var(--color-primary)}.menu-count{color:var(--color-text-muted);font-size:.875rem}.form-field{margin-bottom:1rem}.form-field label{display:block;font-size:.875rem;font-weight:500;margin-bottom:.5rem;color:var(--color-text)}.form-field input[type=text]{width:100%;padding:.75rem;border:1px solid var(--color-border);border-radius:var(--radius);font-size:1rem}.form-field input[type=text]:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px #2563eb1a}.menu-view-page .page-header{gap:.75rem}.menu-view-page .editable-title{cursor:pointer;flex:1}.menu-view-page .editable-title:hover{color:var(--color-primary)}.menu-view-page .edit-name{display:flex;gap:.5rem;flex:1}.menu-view-page .edit-name input{flex:1;padding:.5rem .75rem;border:1px solid var(--color-primary);border-radius:var(--radius);font-size:1.25rem;font-weight:600}.menu-body{display:flex;flex-direction:column;gap:1.5rem}.menu-items-column{order:-1}@media (min-width: 768px){.menu-body{flex-direction:row;align-items:flex-start}.menu-picker-column{flex:3;min-width:0;order:-1}.menu-items-column{flex:2;min-width:0;order:0}}.menu-items{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.menu-item-recipe,.menu-item-note{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius)}.menu-item-recipe .recipe-name{flex:1;font-weight:500;cursor:pointer}.menu-item-recipe .recipe-name:hover{color:var(--color-primary)}.menu-item-note .note-text{flex:1;font-style:italic;color:var(--color-text-muted)}.menu-item-recipe .btn-reorder,.menu-item-note .btn-reorder,.menu-item-recipe .btn-remove,.menu-item-note .btn-remove{padding:.25rem;font-size:1rem;line-height:1;background:transparent;border:none;cursor:pointer;color:var(--color-text-muted);opacity:.5}.menu-item-recipe .btn-reorder:hover,.menu-item-note .btn-reorder:hover{opacity:1;color:var(--color-text)}.menu-item-recipe .btn-remove:hover,.menu-item-note .btn-remove:hover{opacity:1;color:var(--color-danger)}.menu-item-recipe .btn-remove:disabled,.menu-item-note .btn-remove:disabled{opacity:.2;cursor:not-allowed}.deleted-recipe{flex:1;font-style:italic;color:var(--color-text-muted)}.menu-picker-list{list-style:none;margin:0;padding:0}.menu-picker-list li{margin-bottom:.25rem}.menu-picker-item{width:100%;text-align:left;padding:.75rem 1rem}.option-menu{background:#f0fdf4}.option-menu.highlighted{background:#bbf7d0}.option-menu .menu-title{flex:1}.type-badge{font-size:.625rem;text-transform:uppercase;letter-spacing:.05em;padding:.125rem .375rem;background:#16a34a;color:#fff;border-radius:999px}.settings-link{color:var(--color-text-muted);display:flex;align-items:center;padding:.375rem;border-radius:var(--radius)}.settings-link:hover{color:var(--color-text);background:var(--color-bg)}.settings-link.active{color:var(--color-primary)}.settings-page{max-width:600px}.settings-page h2{margin-bottom:2rem}.settings-section{margin-bottom:2rem;padding:1.5rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius)}.settings-section h3{font-size:1rem;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid var(--color-border)}.settings-field{margin-bottom:1rem}.settings-field:last-child{margin-bottom:0}.settings-field label{display:block;font-size:.8rem;font-weight:500;color:var(--color-text-muted);margin-bottom:.375rem}.settings-value{display:flex;align-items:center;gap:.75rem}.inline-edit{display:flex;align-items:center;gap:.5rem}.inline-edit input{flex:1;padding:.375rem .5rem;border:1px solid var(--color-border);border-radius:var(--radius);font-size:1rem}.click-to-edit{cursor:pointer;border-radius:var(--radius);padding:.25rem .375rem;margin:-.25rem -.375rem;display:inline-flex;align-items:center;gap:.375rem}.click-to-edit:hover{background:var(--color-bg)}.edit-hint-icon{opacity:.35}.click-to-edit:hover .edit-hint-icon{opacity:.6}.invite-link-row{display:flex;align-items:center;gap:.375rem}.invite-link-text{font-size:.8rem;color:var(--color-text-muted);word-break:break-all}.members-list{list-style:none}.member-row{display:flex;align-items:center;justify-content:space-between;padding:.5rem 0;border-bottom:1px solid var(--color-border)}.member-row:last-child{border-bottom:none}.member-name{display:flex;align-items:center;gap:.5rem}.admin-badge,.you-badge{font-size:.625rem;text-transform:uppercase;letter-spacing:.05em;padding:.125rem .375rem;border-radius:999px}.admin-badge{background:#dbeafe;color:var(--color-primary)}.you-badge{background:var(--color-bg);color:var(--color-text-muted)}.btn-logout{display:flex;align-items:center;gap:.5rem;color:var(--color-danger);border-color:var(--color-danger)}.btn-logout:hover{background:#fef2f2}
