*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,sans-serif;color:#7a7366;background-color:#f9fafb;min-height:100vh;display:flex;flex-direction:column}#root{display:flex;flex-direction:column;min-height:100vh}.cookbook-card{transition:box-shadow .2s ease,transform .2s ease;border:1px solid #e9e7e4;overflow:hidden;position:relative;background:#fff;border-radius:.5rem}.cookbook-card:hover{transform:translateY(-4px);box-shadow:0 4px 12px #00000026}.cookbook-card img{transition:transform .3s ease}.cookbook-card:hover img{transform:scale(1.05)}.cookbook-card .edit-btn{opacity:0;transition:opacity .2s ease}.cookbook-card:hover .edit-btn{opacity:1}.cookbook-card .edit-btn:hover i{color:#749b3a}.stats-link{text-decoration:none;color:inherit;cursor:pointer}.stats-link:hover strong{color:#749b3a}.rating-stars i{cursor:pointer;color:#bfb9b2;transition:color .15s ease}.rating-stars i.rated,.rating-stars:hover i{color:#ffa900}.rating-stars:hover i:hover~i{color:#bfb9b2}.modal-body-scroll::-webkit-scrollbar{width:8px}.modal-body-scroll::-webkit-scrollbar-track{background:#f1f1f1}.modal-body-scroll::-webkit-scrollbar-thumb{background:#ccc;border-radius:4px}.modal-body-scroll::-webkit-scrollbar-thumb:hover{background:#aaa}@media print{body{margin:0;padding:0}header,footer,.left-nav,.stats-link,.breadcrumb-nav,.recipe-detail>*:not(#print-container){display:none!important}.shopping-list-page>*:not(#shopping-print-container){display:none!important}[style*=margin-left]{margin-left:0!important}#print-container{display:block!important;width:100%;font-family:Lato,sans-serif;color:#000!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}#print-container *{color:#000!important}#print-container .print-source{color:#444!important}#print-container .print-meta-label{color:#666!important}@page{size:letter;margin:.5in}}.left-nav{position:fixed;top:64px;left:0;width:220px;height:calc(100% - 104px);background-color:#fff;padding-top:1rem;padding-bottom:1.5rem;border-right:1px solid #e9e7e4}.left-nav ul{list-style:none;padding:0;margin:0}.left-nav .nav-row{display:flex;align-items:center;border-left:3px solid transparent;transition:all .15s ease}.left-nav .nav-row:hover{background-color:#f7f9ea}.left-nav .nav-row.active{background-color:#f7f9ea;border-left:3px solid #749b3a}.left-nav .nav-row a{flex:1}.left-nav li a{display:flex;align-items:center;padding:.65rem 1rem;color:#7a7366;text-decoration:none;font-weight:500;font-size:.8rem;transition:all .15s ease;gap:.5rem}.left-nav .nav-row:hover a{color:#4e4941}.left-nav .nav-row.active a{color:#749b3a;font-weight:600}.left-nav li a i{width:1rem;text-align:center;font-size:.8rem}.nav-add-btn{width:22px;height:22px;display:flex;align-items:center;justify-content:center;border:1px solid #d1cdc7;border-radius:4px;background:#fff;color:#7a7366;cursor:pointer;font-size:.65rem;margin-right:.75rem;transition:all .15s ease;flex-shrink:0}.nav-add-btn:hover,.left-nav .nav-row:hover .nav-add-btn,.left-nav .nav-row.active .nav-add-btn{border-color:#749b3a;color:#749b3a}.nav-add-btn:disabled,.left-nav .nav-row:hover .nav-add-btn:disabled{opacity:.4;cursor:not-allowed;border-color:#d1cdc7;color:#a8a196}.site-banner-stack{position:relative;z-index:30;display:flex;flex-direction:column}.site-banner{display:flex;align-items:center;justify-content:center;gap:.6rem;padding:.55rem 1rem;font-size:.85rem;line-height:1.35;text-align:center;border-bottom:1px solid transparent}.site-banner i{flex-shrink:0}.site-banner-info{background-color:#e7f0fb;color:#1a4977;border-color:#b7d1ee}.site-banner-warning{background-color:#fff5d7;color:#7a5a10;border-color:#e6d493}.site-banner-critical{background-color:#fdecea;color:#922b21;border-color:#f5b7b1}.site-banner-maintenance{background-color:#fff0d1;color:#6f4a10;border-color:#e6c78e}.overview-panel{display:flex;flex-direction:column;gap:1.75rem}.overview-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.overview-tile{display:flex;align-items:flex-start;gap:.9rem;background-color:#fff;border:1px solid #e9e7e4;border-radius:6px;padding:1rem 1.1rem;text-align:left;font-family:inherit}button.overview-tile{cursor:default;color:inherit}.overview-tile-clickable{cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}.overview-tile-clickable:hover{border-color:#749b3a;box-shadow:0 2px 8px #749b3a1f}.overview-tile-clickable:active{transform:translateY(1px)}.overview-tile-icon{width:34px;height:34px;border-radius:50%;background-color:#f7f9ea;color:#749b3a;display:flex;align-items:center;justify-content:center;flex-shrink:0}.overview-tile-attention .overview-tile-icon{background-color:#fdecea;color:#c0392b}.overview-tile-muted .overview-tile-icon{background-color:#f4f2ee;color:#a8a196}.overview-tile-body{min-width:0;flex:1}.overview-tile-label{font-size:.72rem;color:#7a7366;text-transform:uppercase;letter-spacing:.05em;font-weight:600;margin-bottom:.2rem}.overview-tile-value{font-size:1.65rem;font-weight:700;color:#285e33;line-height:1.1}.overview-tile-attention .overview-tile-value{color:#c0392b}.overview-tile-sub{font-size:.75rem;color:#7a7366;margin-top:.25rem}.overview-tile-clickable .overview-tile-sub{color:#285e33;font-weight:600}.overview-tile-attention.overview-tile-clickable .overview-tile-sub{color:#c0392b}.overview-tile-error{font-size:1.2rem;color:#c0392b}.overview-tile-skeleton{height:1.4rem;width:60%;background:linear-gradient(90deg,#efece7,#f6f4ef,#efece7);background-size:200% 100%;border-radius:4px;animation:overview-shimmer 1.2s linear infinite}.overview-tile-skeleton-inline{display:inline-block;width:100px;height:1rem}@keyframes overview-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.overview-columns{display:grid;grid-template-columns:1.4fr 1fr;gap:1rem}@media(max-width:900px){.overview-columns{grid-template-columns:1fr}}.overview-card{background-color:#fff;border:1px solid #e9e7e4;border-radius:6px;padding:1rem 1.25rem 1.25rem;display:flex;flex-direction:column;gap:.85rem}.overview-card-header h2{display:flex;align-items:center;gap:.5rem;margin:0 0 .2rem;font-size:1.05rem;color:#4e4941}.overview-card-header h2 i{color:#749b3a}.overview-card-header p{margin:0;font-size:.8rem;color:#7a7366}.overview-card-header p code{background-color:#f7f6f2;border-radius:3px;padding:.05rem .35rem;font-size:.75rem}.overview-banner-error{background-color:#fdecea;border:1px solid #f5b7b1;color:#922b21;padding:.65rem .9rem;border-radius:4px;font-size:.82rem;display:flex;align-items:center;gap:.5rem}.overview-banner-error.inline{padding:.5rem .75rem;font-size:.78rem}.overview-empty{color:#a8a196;font-size:.85rem;padding:.5rem 0;font-style:italic}.overview-activity{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.overview-activity-row{padding:.55rem 0;border-bottom:1px solid #f0eee9}.overview-activity-row:last-child{border-bottom:none}.overview-activity-line{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem}.overview-activity-action{color:#4e4941;font-weight:600;font-size:.88rem}.overview-activity-when{color:#a8a196;font-size:.72rem;flex-shrink:0}.overview-activity-who{font-size:.78rem;color:#7a7366;margin-top:.15rem}.overview-activity-actor{color:#285e33;font-weight:500}.overview-activity-skeleton{height:.85rem;background:linear-gradient(90deg,#efece7,#f6f4ef,#efece7);background-size:200% 100%;border-radius:3px;animation:overview-shimmer 1.2s linear infinite;margin-bottom:.35rem}.overview-activity-skeleton-lg{width:70%}.overview-activity-skeleton-sm{width:40%}.overview-status{display:flex;flex-direction:column;gap:.6rem}.overview-status-loading{padding:.25rem 0}.overview-status-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.overview-status-label{color:#4e4941;font-size:.88rem;font-weight:500}.overview-status-pill{display:inline-flex;align-items:center;gap:.35rem;padding:.2rem .55rem;border-radius:999px;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;border:1px solid transparent}.overview-status-pill-ok{background-color:#eaf7ed;color:#285e33;border-color:#b5d3bc}.overview-status-pill-warn{background-color:#fff5d7;color:#7a5a10;border-color:#e6d493}.overview-status-pill-info{background-color:#e7f0fb;color:#1a4977;border-color:#b7d1ee}.overview-status-pill-muted{background-color:#f4f2ee;color:#a8a196;border-color:#e0ddd6}.overview-status-detail{font-size:.78rem;color:#7a5a10;background-color:#fffbea;border:1px solid #f0e4a8;border-radius:4px;padding:.45rem .65rem}.overview-status-banner{display:flex;align-items:center;gap:.5rem;padding:.5rem .7rem;border-radius:4px;font-size:.82rem;border:1px solid transparent}.overview-status-banner-info{background-color:#e7f0fb;color:#1a4977;border-color:#b7d1ee}.overview-status-banner-warning{background-color:#fff5d7;color:#7a5a10;border-color:#e6d493}.overview-status-banner-critical{background-color:#fdecea;color:#922b21;border-color:#f5b7b1}.user-actions{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap}.user-actions-role{border:1px solid #d9d5cd;border-radius:4px;padding:.3rem .4rem;font-size:.75rem;color:#4e4941;background-color:#fff;cursor:pointer}.user-actions-role:disabled{opacity:.5;cursor:not-allowed}.user-actions-btn{display:inline-flex;align-items:center;gap:.3rem;padding:.3rem .55rem;border-radius:4px;font-size:.72rem;font-weight:600;cursor:pointer;border:1px solid transparent;transition:all .15s ease;background-color:#fff}.user-actions-btn:disabled{opacity:.5;cursor:not-allowed}.user-actions-btn.suspend{color:#8a6100;border-color:#f0dfa6;background-color:#fdf6e3}.user-actions-btn.suspend:hover:not(:disabled){background-color:#fbedbf}.user-actions-btn.restore{color:#1e6b34;border-color:#b7ddc1;background-color:#e6f4ea}.user-actions-btn.restore:hover:not(:disabled){background-color:#d3ecd9}.user-actions-btn.delete{color:#922b21;border-color:#f5b7b1;background-color:#fdecea}.user-actions-btn.delete:hover:not(:disabled){background-color:#fbd8d3}.user-actions-error{display:inline-flex;align-items:center;justify-content:center;width:1.1rem;height:1.1rem;border-radius:999px;background-color:#f5b7b1;color:#922b21;font-size:.7rem;font-weight:700;cursor:help}.user-actions-modal-backdrop{position:fixed;inset:0;background-color:#00000080;z-index:50;display:flex;align-items:center;justify-content:center;padding:1rem}.user-actions-modal{background-color:#fff;border-radius:8px;padding:1.5rem 1.5rem 1.25rem;max-width:420px;width:100%;box-shadow:0 10px 40px #00000026;text-align:center}.user-actions-modal-icon{width:48px;height:48px;border-radius:999px;background-color:#fdecea;color:#dc3545;display:flex;align-items:center;justify-content:center;font-size:1.25rem;margin:0 auto .75rem}.user-actions-modal h3{margin:0 0 .5rem;color:#4e4941;font-size:1.1rem}.user-actions-modal p{margin:0 0 .75rem;color:#7a7366;font-size:.85rem;line-height:1.4}.user-actions-modal-warn{color:#922b21!important;font-weight:600}.user-actions-modal-buttons{display:flex;gap:.6rem;margin-top:1rem}.user-actions-modal-btn{flex:1;padding:.55rem 1rem;border-radius:4px;font-size:.85rem;font-weight:600;cursor:pointer;border:1px solid transparent;transition:all .15s ease}.user-actions-modal-btn.cancel{background-color:#fff;color:#4e4941;border-color:#d9d5cd}.user-actions-modal-btn.cancel:hover:not(:disabled){background-color:#faf9f5}.user-actions-modal-btn.confirm{background-color:#dc3545;color:#fff}.user-actions-modal-btn.confirm:hover:not(:disabled){background-color:#b52a37}.user-actions-modal-btn:disabled{opacity:.6;cursor:not-allowed}.users-directory{display:flex;flex-direction:column;gap:1rem}.users-toolbar{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;background-color:#fff;border:1px solid #e9e7e4;border-radius:6px;padding:.75rem 1rem}.users-search{position:relative;flex:1 1 240px;min-width:200px}.users-search i{position:absolute;left:.7rem;top:50%;transform:translateY(-50%);color:#a8a196;font-size:.8rem}.users-search input{width:100%;padding:.5rem .75rem .5rem 2rem;border:1px solid #d9d5cd;border-radius:4px;background-color:#fbfaf7;font-size:.85rem;color:#4e4941;transition:border-color .15s ease}.users-search input:focus{outline:none;border-color:#749b3a;background-color:#fff}.users-filter{display:flex;align-items:center;gap:.4rem;font-size:.75rem;color:#7a7366;text-transform:uppercase;letter-spacing:.04em;font-weight:600}.users-filter select{border:1px solid #d9d5cd;border-radius:4px;padding:.4rem .5rem;font-size:.8rem;color:#4e4941;background-color:#fff;text-transform:none;letter-spacing:normal;font-weight:400}.users-count{margin-left:auto;font-size:.75rem;color:#7a7366}.users-error{background-color:#fdecea;border:1px solid #f5b7b1;color:#922b21;padding:.75rem 1rem;border-radius:4px;font-size:.85rem}.users-table-wrap{background-color:#fff;border:1px solid #e9e7e4;border-radius:6px;overflow-x:auto}.users-table{width:100%;border-collapse:collapse;font-size:.85rem}.users-table thead th{text-align:left;padding:.65rem 1rem;background-color:#faf9f5;border-bottom:1px solid #e9e7e4;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#7a7366;white-space:nowrap}.users-table thead th.num{text-align:right}.users-table tbody td{padding:.7rem 1rem;border-bottom:1px solid #f2f0eb;color:#4e4941;vertical-align:middle}.users-table tbody tr:last-child td{border-bottom:none}.users-table tbody tr:hover{background-color:#fbfaf7}.users-table td.num{text-align:right;font-variant-numeric:tabular-nums}.cell-name{font-weight:600;color:#4e4941}.cell-email{color:#7a7366;font-family:Inter,sans-serif}.provider-pill,.role-pill,.status-pill{display:inline-flex;align-items:center;gap:.3rem;padding:.2rem .55rem;border-radius:999px;font-size:.7rem;font-weight:600;border:1px solid transparent;white-space:nowrap}.provider-google{background-color:#eef4ff;color:#1a56db;border-color:#c9dcff}.provider-email{background-color:#fdf6e3;color:#8a6100;border-color:#f0dfa6}.provider-unknown,.role-user{background-color:#f2f0eb;color:#7a7366;border-color:#e0dcd3}.role-moderator{background-color:#eaf0d8;color:#4d651c;border-color:#cdda9e}.role-admin{background-color:#e6f0e8;color:#285e33;border-color:#b5d3bc}.status-active{background-color:#e6f4ea;color:#1e6b34;border-color:#b7ddc1}.status-suspended{background-color:#fdecea;color:#922b21;border-color:#f5b7b1}.users-table th.actions-col,.users-table td.actions-col{white-space:nowrap;width:1%}.users-empty{text-align:center;color:#7a7366;padding:2.5rem 1rem!important;font-style:italic}.users-footer{display:flex;align-items:center;justify-content:center;gap:1rem;padding:.5rem 0;min-height:2rem}.users-loading{font-size:.8rem;color:#7a7366}.users-load-more{background-color:#fff;border:1px solid #d9d5cd;color:#4e4941;padding:.5rem 1.25rem;border-radius:4px;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .15s ease}.users-load-more:hover{border-color:#749b3a;color:#285e33;background-color:#f7f9ea}.users-end{font-size:.75rem;color:#a8a196;font-style:italic}.add-recipe-overlay{position:fixed;inset:0;background:#00000080;z-index:50;display:flex;align-items:flex-start;justify-content:center;padding:2rem 1rem;overflow-y:auto}.add-recipe-modal{background:#fff;border-radius:.75rem;width:100%;max-width:960px;max-height:calc(100vh - 4rem);display:flex;flex-direction:column;box-shadow:0 20px 60px #0003;animation:addRecipeSlideIn .25s ease-out}@keyframes addRecipeSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.add-recipe-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;flex-shrink:0}.add-recipe-body{flex:1;overflow-y:auto;padding:1.5rem}.add-recipe-photo-upload{width:220px;min-height:200px;border:2px dashed #d1cfc9;border-radius:.5rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:border-color .2s,background .2s;overflow:hidden;flex-shrink:0}.add-recipe-photo-upload:hover{border-color:#749b3a;background:#f7f9ea}.add-recipe-group-card{background:#fafaf8;border:1px solid #eeece8;border-radius:.5rem;padding:1rem}.add-recipe-group-title,.add-recipe-group-title::placeholder{color:#7a7366;opacity:1}.add-recipe-add-row{display:flex;align-items:center;padding:.5rem .75rem;background:#f3f2ee;border-radius:.375rem;margin-top:.5rem}.add-recipe-step-number{width:24px;height:24px;border-radius:50%;background:#e2e0dc;color:#7a7366;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:600;flex-shrink:0;margin-right:.5rem}.add-recipe-tag-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;width:64px;height:64px;border-radius:.5rem;border:1px solid #e9e7e4;background:#fff;color:#7a7366;cursor:pointer;transition:all .15s ease}.add-recipe-tag-btn:hover{border-color:#749b3a;color:#749b3a}.add-recipe-tag-btn.active{background:#749b3a;border-color:#749b3a;color:#fff}.drag-handle{display:flex;align-items:center;justify-content:center;color:#ccc;cursor:grab;font-size:12px;flex-shrink:0;width:24px}.drag-handle:hover{color:#888}.drag-handle:active{cursor:grabbing}.drag-row{border-radius:.375rem;transition:background .15s,opacity .15s}.drag-row.dragging{opacity:.4;background:#f0f0ec}.drag-row[draggable]:hover{background:#fafaf8}.add-recipe-visibility{display:flex;gap:.75rem;flex-wrap:wrap}.add-recipe-visibility-option{flex:1 1 220px;display:flex;align-items:flex-start;gap:.6rem;padding:.75rem .85rem;border:1px solid #e5e2dc;border-radius:.5rem;background:#fbfaf7;cursor:pointer;transition:all .15s ease}.add-recipe-visibility-option:hover{border-color:#b5d3bc;background:#f5f8f1}.add-recipe-visibility-option.active{border-color:#749b3a;background:#eef4e5;box-shadow:inset 0 0 0 1px #749b3a}.add-recipe-visibility-option input[type=radio]{margin-top:.2rem;accent-color:#749b3a}.add-recipe-visibility-title{font-weight:600;color:#4e4941;font-size:.9rem;display:flex;align-items:center;gap:.4rem}.add-recipe-visibility-title i{color:#749b3a;font-size:.85rem}.add-recipe-visibility-desc{font-size:.75rem;color:#7a7366;margin-top:.15rem}.add-recipe-footer{display:flex;justify-content:flex-end;padding:1rem 1.5rem;border-top:1px solid #eeece8;background:#fafaf8;border-radius:0 0 .75rem .75rem;flex-shrink:0}@media(max-width:768px){.add-recipe-photo-upload{width:100%;min-height:160px}.add-recipe-modal{max-height:calc(100vh - 2rem)}.add-recipe-overlay{padding:1rem .5rem}}.recipes-directory{display:flex;flex-direction:column;gap:1rem}.recipes-toolbar{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;background-color:#fff;border:1px solid #e9e7e4;border-radius:6px;padding:.75rem 1rem}.recipes-search{position:relative;flex:1 1 320px;min-width:220px}.recipes-search i{position:absolute;left:.7rem;top:50%;transform:translateY(-50%);color:#a8a196;font-size:.8rem}.recipes-search input{width:100%;padding:.5rem .75rem .5rem 2rem;border:1px solid #d9d5cd;border-radius:4px;background-color:#fbfaf7;font-size:.85rem;color:#4e4941;transition:border-color .15s ease}.recipes-search input:focus{outline:none;border-color:#749b3a;background-color:#fff}.recipes-filter{display:inline-flex;align-items:center;gap:.35rem;font-size:.8rem;color:#4e4941;cursor:pointer;-webkit-user-select:none;user-select:none}.recipes-count{margin-left:auto;font-size:.75rem;color:#7a7366}.recipes-error{background-color:#fdecea;border:1px solid #f5b7b1;color:#922b21;padding:.75rem 1rem;border-radius:4px;font-size:.85rem}.recipes-table-wrap{background-color:#fff;border:1px solid #e9e7e4;border-radius:6px;overflow-x:auto}.recipes-table{width:100%;border-collapse:collapse;font-size:.85rem}.recipes-table thead th{text-align:left;padding:.65rem 1rem;background-color:#faf9f5;border-bottom:1px solid #e9e7e4;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#7a7366;white-space:nowrap}.recipes-table thead th.center{text-align:center}.recipes-table tbody td{padding:.7rem 1rem;border-bottom:1px solid #f2f0eb;color:#4e4941;vertical-align:middle}.recipes-table tbody tr:last-child td{border-bottom:none}.recipes-table tbody tr:hover{background-color:#fbfaf7}.recipes-table td.center{text-align:center}.cell-title{font-weight:600;color:#4e4941;max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.recipe-id{font-size:.72rem;background-color:#faf9f5;border:1px solid #e9e7e4;border-radius:3px;padding:.15rem .35rem;color:#7a7366;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;display:inline-block;max-width:130px;overflow:hidden;text-overflow:ellipsis;vertical-align:middle}.cell-author{display:flex;flex-direction:column;gap:.1rem}.author-email{color:#4e4941;font-size:.82rem}.author-name{color:#a8a196;font-size:.72rem}.cookbook-badge{display:inline-flex;align-items:center;gap:.3rem;padding:.2rem .5rem;border-radius:999px;background-color:#eef4ff;color:#1a56db;border:1px solid #c9dcff;font-size:.7rem;font-weight:600}.featured-toggle{position:relative;display:inline-block;width:40px;height:22px;cursor:pointer}.featured-toggle input{opacity:0;width:0;height:0}.featured-slider{position:absolute;cursor:pointer;inset:0;background-color:#d9d5cd;transition:background-color .2s;border-radius:22px}.featured-slider:before{position:absolute;content:"";height:16px;width:16px;left:3px;bottom:3px;background-color:#fff;border-radius:50%;transition:transform .2s;box-shadow:0 1px 2px #00000026}.featured-toggle input:checked+.featured-slider{background-color:#749b3a}.featured-toggle input:checked+.featured-slider:before{transform:translate(18px)}.featured-toggle input:disabled+.featured-slider{opacity:.5;cursor:not-allowed}.recipe-actions{display:inline-flex;gap:.35rem}.recipe-action-btn{display:inline-flex;align-items:center;gap:.3rem;padding:.3rem .55rem;border-radius:4px;font-size:.72rem;font-weight:600;cursor:pointer;border:1px solid transparent;transition:all .15s ease;background-color:#fff}.recipe-action-btn:disabled{opacity:.5;cursor:not-allowed}.recipe-action-btn.edit{color:#285e33;border-color:#b5d3bc;background-color:#e6f0e8}.recipe-action-btn.edit:hover:not(:disabled){background-color:#d1e5d5}.recipe-action-btn.delete{color:#922b21;border-color:#f5b7b1;background-color:#fdecea}.recipe-action-btn.delete:hover:not(:disabled){background-color:#fbd8d3}.recipes-table th.actions-col,.recipes-table td.actions-col{white-space:nowrap;width:1%}.recipes-empty{text-align:center;color:#7a7366;padding:2.5rem 1rem!important;font-style:italic}.recipes-footer{display:flex;align-items:center;justify-content:center;gap:1rem;padding:.5rem 0;min-height:2rem}.recipes-loading{font-size:.8rem;color:#7a7366}.recipes-load-more{background-color:#fff;border:1px solid #d9d5cd;color:#4e4941;padding:.5rem 1.25rem;border-radius:4px;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .15s ease}.recipes-load-more:hover{border-color:#749b3a;color:#285e33;background-color:#f7f9ea}.recipes-end{font-size:.75rem;color:#a8a196;font-style:italic}.recipes-modal-backdrop{position:fixed;inset:0;background-color:#00000080;z-index:50;display:flex;align-items:center;justify-content:center;padding:1rem}.recipes-modal{background-color:#fff;border-radius:8px;padding:1.5rem 1.5rem 1.25rem;max-width:420px;width:100%;box-shadow:0 10px 40px #00000026;text-align:center}.recipes-modal-icon{width:48px;height:48px;border-radius:999px;background-color:#fdecea;color:#dc3545;display:flex;align-items:center;justify-content:center;font-size:1.25rem;margin:0 auto .75rem}.recipes-modal h3{margin:0 0 .5rem;color:#4e4941;font-size:1.1rem}.recipes-modal p{margin:0 0 .75rem;color:#7a7366;font-size:.85rem;line-height:1.4}.recipes-modal-warn{color:#922b21!important;font-weight:600}.recipes-modal-buttons{display:flex;gap:.6rem;margin-top:1rem}.recipes-modal-btn{flex:1;padding:.55rem 1rem;border-radius:4px;font-size:.85rem;font-weight:600;cursor:pointer;border:1px solid transparent;transition:all .15s ease}.recipes-modal-btn.cancel{background-color:#fff;color:#4e4941;border-color:#d9d5cd}.recipes-modal-btn.cancel:hover:not(:disabled){background-color:#faf9f5}.recipes-modal-btn.confirm{background-color:#dc3545;color:#fff}.recipes-modal-btn.confirm:hover:not(:disabled){background-color:#b52a37}.recipes-modal-btn:disabled{opacity:.6;cursor:not-allowed}.moderation-queue{display:flex;flex-direction:column;gap:1rem}.moderation-toolbar{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;background-color:#fff;border:1px solid #e9e7e4;border-radius:6px;padding:.75rem 1rem}.moderation-filter{display:inline-flex;align-items:center;gap:.4rem;font-size:.78rem;color:#4e4941;-webkit-user-select:none;user-select:none}.moderation-filter>span{font-weight:600;text-transform:uppercase;letter-spacing:.03em;color:#7a7366}.moderation-filter select{padding:.35rem .55rem;border:1px solid #d9d5cd;border-radius:4px;background-color:#fbfaf7;font-size:.82rem;color:#4e4941}.moderation-filter select:focus{outline:none;border-color:#749b3a;background-color:#fff}.moderation-count{margin-left:auto;font-size:.75rem;color:#7a7366}.moderation-error{background-color:#fdecea;border:1px solid #f5b7b1;color:#922b21;padding:.75rem 1rem;border-radius:4px;font-size:.85rem}.moderation-table-wrap{background-color:#fff;border:1px solid #e9e7e4;border-radius:6px;overflow-x:auto}.moderation-table{width:100%;border-collapse:collapse;font-size:.85rem}.moderation-table thead th{text-align:left;padding:.65rem 1rem;background-color:#faf9f5;border-bottom:1px solid #e9e7e4;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#7a7366;white-space:nowrap}.moderation-table tbody td{padding:.7rem 1rem;border-bottom:1px solid #f2f0eb;color:#4e4941;vertical-align:top}.moderation-table tbody tr:last-child td{border-bottom:none}.moderation-table tbody tr:hover{background-color:#fbfaf7}.cell-recipe{min-width:200px;max-width:260px}.cell-recipe .recipe-title{font-weight:600;color:#4e4941;margin-bottom:.25rem;overflow:hidden;text-overflow:ellipsis}.recipe-id{font-size:.7rem;background-color:#faf9f5;border:1px solid #e9e7e4;border-radius:3px;padding:.1rem .35rem;color:#7a7366;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;display:inline-block;max-width:200px;overflow:hidden;text-overflow:ellipsis;vertical-align:middle;white-space:nowrap}.cell-notes{max-width:280px}.notes-text{display:block;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;white-space:normal;color:#4e4941;font-size:.82rem;line-height:1.35}.cell-reporter{display:flex;flex-direction:column;gap:.1rem;min-width:140px}.reporter-email{color:#4e4941;font-size:.82rem}.reporter-name{color:#a8a196;font-size:.72rem}.muted{color:#b6ada0}.reason-badge{display:inline-block;padding:.2rem .55rem;border-radius:999px;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;border:1px solid transparent;white-space:nowrap}.reason-spam{background-color:#fef3c7;color:#92400e;border-color:#fde68a}.reason-inappropriate{background-color:#fdecea;color:#922b21;border-color:#f5b7b1}.reason-copyright{background-color:#ede9fe;color:#5b21b6;border-color:#d8ceff}.reason-other{background-color:#f1f5f9;color:#475569;border-color:#cbd5e1}.status-badge{display:inline-block;padding:.2rem .55rem;border-radius:999px;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;border:1px solid transparent;white-space:nowrap}.status-badge.pending{background-color:#fef3c7;color:#92400e;border-color:#fde68a}.status-badge.resolution-dismissed{background-color:#e6f0e8;color:#285e33;border-color:#b5d3bc}.status-badge.resolution-edited{background-color:#eef4ff;color:#1a56db;border-color:#c9dcff}.status-badge.resolution-deleted{background-color:#fdecea;color:#922b21;border-color:#f5b7b1}.resolution-cell{display:flex;flex-direction:column;gap:.15rem}.resolved-when{font-size:.7rem;color:#a8a196}.moderation-actions{display:inline-flex;gap:.35rem;flex-wrap:wrap}.mod-action-btn{display:inline-flex;align-items:center;gap:.3rem;padding:.3rem .55rem;border-radius:4px;font-size:.72rem;font-weight:600;cursor:pointer;border:1px solid transparent;transition:all .15s ease;background-color:#fff}.mod-action-btn:disabled{opacity:.5;cursor:not-allowed}.mod-action-btn.approve{color:#285e33;border-color:#b5d3bc;background-color:#e6f0e8}.mod-action-btn.approve:hover:not(:disabled){background-color:#d1e5d5}.mod-action-btn.edit{color:#1a56db;border-color:#c9dcff;background-color:#eef4ff}.mod-action-btn.edit:hover:not(:disabled){background-color:#dbe7ff}.mod-action-btn.delete{color:#922b21;border-color:#f5b7b1;background-color:#fdecea}.mod-action-btn.delete:hover:not(:disabled){background-color:#fbd8d3}.moderation-table th.actions-col,.moderation-table td.actions-col{white-space:nowrap;width:1%}.moderation-empty{text-align:center;color:#7a7366;padding:2.5rem 1rem!important;font-style:italic}.moderation-footer{display:flex;align-items:center;justify-content:center;gap:1rem;padding:.5rem 0;min-height:2rem}.moderation-loading{font-size:.8rem;color:#7a7366}.moderation-load-more{background-color:#fff;border:1px solid #d9d5cd;color:#4e4941;padding:.5rem 1.25rem;border-radius:4px;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .15s ease}.moderation-load-more:hover{border-color:#749b3a;color:#285e33;background-color:#f7f9ea}.moderation-end{font-size:.75rem;color:#a8a196;font-style:italic}.moderation-modal-backdrop{position:fixed;inset:0;background-color:#00000080;z-index:50;display:flex;align-items:center;justify-content:center;padding:1rem}.moderation-modal{background-color:#fff;border-radius:8px;padding:1.5rem 1.5rem 1.25rem;max-width:420px;width:100%;box-shadow:0 10px 40px #00000026;text-align:center}.moderation-modal-icon{width:48px;height:48px;border-radius:999px;display:flex;align-items:center;justify-content:center;font-size:1.25rem;margin:0 auto .75rem}.moderation-modal-icon.danger{background-color:#fdecea;color:#dc3545}.moderation-modal h3{margin:0 0 .5rem;color:#4e4941;font-size:1.1rem}.moderation-modal p{margin:0 0 .75rem;color:#7a7366;font-size:.85rem;line-height:1.4}.moderation-modal-warn{color:#922b21!important;font-weight:600}.moderation-modal-buttons{display:flex;gap:.6rem;margin-top:1rem}.moderation-modal-btn{flex:1;padding:.55rem 1rem;border-radius:4px;font-size:.85rem;font-weight:600;cursor:pointer;border:1px solid transparent;transition:all .15s ease}.moderation-modal-btn.cancel{background-color:#fff;color:#4e4941;border-color:#d9d5cd}.moderation-modal-btn.cancel:hover:not(:disabled){background-color:#faf9f5}.moderation-modal-btn.confirm-danger{background-color:#dc3545;color:#fff}.moderation-modal-btn.confirm-danger:hover:not(:disabled){background-color:#b52a37}.moderation-modal-btn:disabled{opacity:.6;cursor:not-allowed}.taxonomy-panel{display:flex;flex-direction:column;gap:1.75rem}.taxonomy-section{background-color:#fff;border:1px solid #e9e7e4;border-radius:6px;padding:1rem 1.25rem 1.25rem;display:flex;flex-direction:column;gap:1rem}.taxonomy-section-header h2{display:flex;align-items:center;gap:.5rem;margin:0 0 .25rem;font-size:1.05rem;color:#4e4941}.taxonomy-section-header h2 i{color:#749b3a}.taxonomy-section-header p{margin:0;font-size:.82rem;color:#7a7366;line-height:1.45}.taxonomy-error{background-color:#fdecea;border:1px solid #f5b7b1;color:#922b21;padding:.65rem .9rem;border-radius:4px;font-size:.82rem;display:flex;align-items:center;gap:.5rem}.taxonomy-error.inline{padding:.5rem .75rem;font-size:.78rem}.taxonomy-success{background-color:#eaf7ed;border:1px solid #b5d3bc;color:#285e33;padding:.65rem .9rem;border-radius:4px;font-size:.82rem;display:flex;align-items:center;gap:.5rem}.taxonomy-loading{color:#7a7366;font-size:.85rem;padding:.5rem 0}.taxonomy-muted{color:#a8a196;font-size:.78rem}.taxonomy-groups{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem}.taxonomy-card{border:1px solid #e9e7e4;border-radius:6px;background-color:#fbfaf7;padding:.9rem .9rem 1rem;display:flex;flex-direction:column;gap:.6rem;position:relative}.taxonomy-card-header{display:flex;align-items:center;gap:.5rem}.taxonomy-card-header i{color:#749b3a}.taxonomy-card-header h3{margin:0;font-size:.95rem;color:#4e4941;flex:1}.taxonomy-count{display:inline-flex;align-items:center;justify-content:center;min-width:1.4rem;padding:.1rem .4rem;background-color:#fff;border:1px solid #e9e7e4;border-radius:999px;color:#7a7366;font-size:.72rem;font-weight:600}.taxonomy-card-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.3rem;max-height:240px;overflow-y:auto}.taxonomy-card-row{display:flex;align-items:center;gap:.5rem;padding:.35rem .5rem;background-color:#fff;border:1px solid #e9e7e4;border-radius:4px;font-size:.82rem;color:#4e4941}.taxonomy-card-row.editing{border-color:#749b3a;background-color:#f7f9ea}.taxonomy-card-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.taxonomy-card-row input[type=text]{flex:1;border:1px solid #d9d5cd;border-radius:3px;padding:.25rem .4rem;font-size:.82rem;color:#4e4941}.taxonomy-card-row input[type=text]:focus{outline:none;border-color:#749b3a;background-color:#fff}.taxonomy-card-row-actions{display:inline-flex;gap:.2rem}.taxonomy-icon-btn{border:none;background:transparent;color:#a8a196;font-size:.78rem;padding:.25rem .4rem;border-radius:3px;cursor:pointer;transition:all .15s ease}.taxonomy-icon-btn:hover:not(:disabled){background-color:#f2f0eb;color:#4e4941}.taxonomy-icon-btn.danger:hover:not(:disabled){color:#922b21;background-color:#fdecea}.taxonomy-icon-btn.confirm{color:#285e33}.taxonomy-icon-btn.confirm:hover:not(:disabled){background-color:#eaf7ed}.taxonomy-icon-btn:disabled{opacity:.5;cursor:not-allowed}.taxonomy-card-empty{font-style:italic;color:#a8a196;font-size:.78rem;padding:.35rem .5rem}.taxonomy-card-add{display:flex;gap:.4rem;margin-top:auto}.taxonomy-card-add input{flex:1;border:1px solid #d9d5cd;border-radius:3px;padding:.35rem .5rem;font-size:.82rem;color:#4e4941;background-color:#fff}.taxonomy-card-add input:focus{outline:none;border-color:#749b3a}.taxonomy-primary{display:inline-flex;align-items:center;gap:.4rem;padding:.55rem 1rem;background-color:#749b3a;color:#fff;border:1px solid #749b3a;border-radius:4px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .15s ease}.taxonomy-primary:hover:not(:disabled){background-color:#5f8130;border-color:#5f8130}.taxonomy-primary:disabled{opacity:.5;cursor:not-allowed}.taxonomy-primary.small{padding:.35rem .65rem;font-size:.78rem}.taxonomy-primary.danger{background-color:#dc3545;border-color:#dc3545}.taxonomy-primary.danger:hover:not(:disabled){background-color:#b52a37;border-color:#b52a37}.taxonomy-secondary{display:inline-flex;align-items:center;gap:.4rem;padding:.4rem .85rem;background-color:#fff;color:#4e4941;border:1px solid #d9d5cd;border-radius:4px;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .15s ease}.taxonomy-secondary:hover:not(:disabled){border-color:#749b3a;color:#285e33;background-color:#f7f9ea}.taxonomy-secondary:disabled{opacity:.5;cursor:not-allowed}.taxonomy-scan-cta{display:flex;align-items:center;gap:.8rem;flex-wrap:wrap}.taxonomy-scan-meta{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap;padding:.35rem .5rem;font-size:.82rem;color:#4e4941}.taxonomy-merge-grid{display:grid;grid-template-columns:minmax(260px,1fr) minmax(260px,1fr);gap:1rem}@media(max-width:720px){.taxonomy-merge-grid{grid-template-columns:1fr}}.taxonomy-inventory{border:1px solid #e9e7e4;border-radius:6px;background-color:#fbfaf7;display:flex;flex-direction:column;min-height:0}.taxonomy-inventory-header{display:flex;align-items:center;gap:.5rem;padding:.6rem .75rem;border-bottom:1px solid #e9e7e4;background-color:#fff;border-radius:6px 6px 0 0}.taxonomy-inventory-header input{flex:1;border:1px solid #d9d5cd;border-radius:3px;padding:.35rem .5rem;font-size:.82rem;color:#4e4941}.taxonomy-inventory-header input:focus{outline:none;border-color:#749b3a}.taxonomy-inventory-list{max-height:320px;overflow-y:auto;padding:.4rem .5rem;display:flex;flex-direction:column;gap:.15rem}.taxonomy-inventory-empty{color:#a8a196;font-size:.82rem;font-style:italic;padding:.5rem;text-align:center}.taxonomy-inventory-row{display:flex;align-items:center;gap:.5rem;padding:.3rem .4rem;font-size:.82rem;color:#4e4941;cursor:pointer;border-radius:3px}.taxonomy-inventory-row:hover{background-color:#fff}.taxonomy-inventory-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.taxonomy-inventory-count{color:#7a7366;font-size:.72rem;background-color:#fff;border:1px solid #e9e7e4;border-radius:999px;padding:.1rem .45rem;font-weight:600}.taxonomy-merge-form{border:1px solid #e9e7e4;border-radius:6px;padding:.9rem;background-color:#fbfaf7;display:flex;flex-direction:column;gap:.7rem}.taxonomy-merge-form h3{margin:0;font-size:.9rem;color:#4e4941}.taxonomy-merge-selected{display:flex;align-items:flex-start;gap:.5rem;flex-wrap:wrap;min-height:1.75rem}.taxonomy-chip-row{display:inline-flex;gap:.35rem;flex-wrap:wrap}.taxonomy-chip{display:inline-flex;align-items:center;gap:.3rem;padding:.2rem .5rem;background-color:#fff;border:1px solid #d9d5cd;border-radius:999px;font-size:.76rem;color:#4e4941}.taxonomy-chip button{border:none;background:none;color:#a8a196;cursor:pointer;padding:0;font-size:.7rem;display:inline-flex;align-items:center}.taxonomy-chip button:hover{color:#922b21}.taxonomy-merge-label{display:flex;flex-direction:column;gap:.3rem;font-size:.78rem;color:#7a7366}.taxonomy-merge-label input{border:1px solid #d9d5cd;border-radius:3px;padding:.4rem .55rem;font-size:.9rem;color:#4e4941;background-color:#fff}.taxonomy-merge-label input:focus{outline:none;border-color:#749b3a}.taxonomy-modal-backdrop{position:fixed;inset:0;background-color:#00000080;z-index:50;display:flex;align-items:center;justify-content:center;padding:1rem}.taxonomy-modal{background-color:#fff;border-radius:8px;padding:1.4rem 1.4rem 1.2rem;max-width:420px;width:100%;box-shadow:0 10px 40px #00000026;text-align:center}.taxonomy-modal-icon{width:44px;height:44px;border-radius:999px;background-color:#fdecea;color:#dc3545;display:flex;align-items:center;justify-content:center;font-size:1.15rem;margin:0 auto .65rem}.taxonomy-modal h3{margin:0 0 .5rem;color:#4e4941;font-size:1.05rem}.taxonomy-modal p{margin:0 0 .75rem;color:#7a7366;font-size:.85rem;line-height:1.45}.taxonomy-modal-buttons{display:flex;gap:.6rem;margin-top:.75rem;justify-content:center}.settings-panel{display:flex;flex-direction:column;gap:1.75rem;max-width:640px}.settings-section{background-color:#fff;border:1px solid #e9e7e4;border-radius:6px;padding:1rem 1.25rem 1.25rem;display:flex;flex-direction:column;gap:.85rem}.settings-section-header h2{display:flex;align-items:center;gap:.5rem;margin:0 0 .25rem;font-size:1.05rem;color:#4e4941}.settings-section-header h2 i{color:#749b3a}.settings-section-header p{margin:0;font-size:.82rem;color:#7a7366;line-height:1.45}.settings-loading{color:#7a7366;font-size:.9rem;padding:1rem 0;display:inline-flex;align-items:center;gap:.5rem}.settings-error{background-color:#fdecea;border:1px solid #f5b7b1;color:#922b21;padding:.65rem .9rem;border-radius:4px;font-size:.82rem;display:flex;align-items:center;gap:.5rem}.settings-error.inline{padding:.5rem .75rem;font-size:.78rem}.settings-success{background-color:#eaf7ed;border:1px solid #b5d3bc;color:#285e33;padding:.5rem .75rem;border-radius:4px;font-size:.78rem;display:flex;align-items:center;gap:.5rem}.settings-muted{color:#a8a196;font-size:.72rem;font-weight:500}.settings-toggle{display:inline-flex;align-items:center;gap:.65rem;cursor:pointer;-webkit-user-select:none;user-select:none}.settings-toggle input{position:absolute;opacity:0;pointer-events:none}.settings-toggle-track{width:42px;height:22px;border-radius:999px;background-color:#d9d5cd;position:relative;transition:background-color .15s ease;flex-shrink:0}.settings-toggle-thumb{position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:999px;background-color:#fff;box-shadow:0 1px 3px #00000026;transition:transform .15s ease}.settings-toggle input:checked+.settings-toggle-track{background-color:#749b3a}.settings-toggle input:checked+.settings-toggle-track .settings-toggle-thumb{transform:translate(20px)}.settings-toggle input:disabled+.settings-toggle-track{opacity:.5;cursor:not-allowed}.settings-toggle-label{font-size:.88rem;color:#4e4941;font-weight:600}.settings-field{display:flex;flex-direction:column;gap:.35rem}.settings-field-label{display:flex;align-items:center;justify-content:space-between;gap:.5rem;font-size:.78rem;color:#7a7366;font-weight:600}.settings-field textarea,.settings-field input[type=text],.settings-field select{border:1px solid #d9d5cd;border-radius:4px;padding:.5rem .6rem;font-size:.88rem;color:#4e4941;background-color:#fff;font-family:inherit;resize:vertical}.settings-field textarea:focus,.settings-field input[type=text]:focus,.settings-field select:focus{outline:none;border-color:#749b3a}.settings-field textarea:disabled,.settings-field select:disabled{opacity:.6;cursor:not-allowed}.settings-field select{max-width:220px}.settings-banner-preview{display:flex;align-items:center;gap:.55rem;padding:.6rem .85rem;border-radius:4px;font-size:.85rem;font-weight:500;border:1px solid transparent}.settings-banner-info{background-color:#e7f0fb;color:#1a4977;border-color:#b7d1ee}.settings-banner-warning{background-color:#fff5d7;color:#7a5a10;border-color:#e6d493}.settings-banner-critical{background-color:#fdecea;color:#922b21;border-color:#f5b7b1}.settings-banner-empty{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem .75rem;border-radius:4px;background-color:#f7f6f2;color:#a8a196;font-size:.82rem;font-style:italic;border:1px dashed #d9d5cd}.settings-actions{display:flex;gap:.6rem;flex-wrap:wrap;margin-top:.25rem}.settings-primary{display:inline-flex;align-items:center;gap:.4rem;padding:.55rem 1rem;background-color:#749b3a;color:#fff;border:1px solid #749b3a;border-radius:4px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .15s ease}.settings-primary:hover:not(:disabled){background-color:#5f8130;border-color:#5f8130}.settings-primary:disabled{opacity:.5;cursor:not-allowed}.settings-secondary{display:inline-flex;align-items:center;gap:.4rem;padding:.5rem .9rem;background-color:#fff;color:#4e4941;border:1px solid #d9d5cd;border-radius:4px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .15s ease}.settings-secondary:hover:not(:disabled){border-color:#749b3a;color:#285e33;background-color:#f7f9ea}.settings-secondary:disabled{opacity:.5;cursor:not-allowed}.invites-panel{display:flex;flex-direction:column;gap:1.75rem}.invites-section{background-color:#fff;border:1px solid #e9e7e4;border-radius:6px;padding:1rem 1.25rem 1.25rem;display:flex;flex-direction:column;gap:1rem}.invites-section-header h2{display:flex;align-items:center;gap:.5rem;margin:0 0 .25rem;font-size:1.05rem;color:#4e4941}.invites-section-header h2 i{color:#749b3a}.invites-section-header p{margin:0;font-size:.82rem;color:#7a7366;line-height:1.45}.invites-section-header-row{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap}.invites-badge{background-color:#ffa900;color:#fff;border-radius:999px;padding:.1rem .55rem;font-size:.7rem;font-weight:600;margin-left:.35rem}.invites-badge-muted{background-color:#ece9e5;color:#6b655c;font-weight:500}.invites-banner{display:flex;align-items:center;gap:.55rem;padding:.7rem .9rem;border-radius:5px;font-size:.85rem}.invites-banner-success{background-color:#eaf7ed;border:1px solid #b5d3bc;color:#285e33}.invites-banner-error{background-color:#fdecea;border:1px solid #f5b7b1;color:#922b21}.invites-banner-close{margin-left:auto;background:none;border:none;color:inherit;cursor:pointer;padding:.15rem .35rem;opacity:.7}.invites-banner-close:hover{opacity:1}.invites-loading,.invites-empty{color:#7a7366;font-size:.85rem;padding:.5rem 0}.invites-empty{background-color:#faf8f4;border:1px dashed #e0dcd5;border-radius:5px;padding:.9rem 1rem;text-align:center}.invites-empty-row{text-align:center;color:#a8a196;font-size:.85rem;padding:1rem}.invites-muted{color:#a8a196;font-size:.85rem}.invites-mono{font-family:SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.82rem;color:#4e4941}.invites-add-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem}.invites-add-card{border:1px solid #ece9e5;border-radius:5px;padding:.85rem 1rem;background-color:#fafaf7;display:flex;flex-direction:column;gap:.55rem}.invites-add-card h3{margin:0 0 .15rem;font-size:.9rem;color:#4e4941}.invites-input{width:100%;padding:.5rem .7rem;border:1px solid #d9d5cd;border-radius:4px;font-size:.88rem;background-color:#fff;color:#4e4941;outline:none;transition:border-color .15s,box-shadow .15s}.invites-input:focus{border-color:#ffa900;box-shadow:0 0 0 2px #ffa90026}.invites-textarea{resize:vertical;font-family:inherit;min-height:5rem}.invites-filter{max-width:260px}.invites-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.45rem .85rem;font-size:.82rem;font-weight:500;border-radius:4px;border:1px solid transparent;cursor:pointer;transition:background-color .15s,border-color .15s,color .15s}.invites-btn:disabled{opacity:.55;cursor:not-allowed}.invites-btn-primary{background-color:#749b3a;color:#fff;border-color:#6a8f34}.invites-btn-primary:hover:not(:disabled){background-color:#6a8f34}.invites-btn-danger{background-color:#fff;color:#922b21;border-color:#e6c1bd;margin-left:.4rem}.invites-btn-danger:hover:not(:disabled){background-color:#fdecea;border-color:#d9a09a}.invites-table-wrap{overflow-x:auto;border:1px solid #ece9e5;border-radius:5px}.invites-table{width:100%;border-collapse:collapse;font-size:.85rem}.invites-table th,.invites-table td{padding:.55rem .75rem;text-align:left;border-bottom:1px solid #f0eeea;vertical-align:middle}.invites-table thead th{background-color:#faf8f4;color:#6b655c;font-weight:600;font-size:.78rem;text-transform:uppercase;letter-spacing:.02em}.invites-table tbody tr:last-child td{border-bottom:none}.invites-table tbody tr:hover{background-color:#fafaf7}.invites-note-cell{max-width:260px;color:#5f594f;font-size:.82rem}.invites-actions-col{text-align:right;white-space:nowrap}.invites-pill{display:inline-flex;align-items:center;gap:.35rem;padding:.15rem .55rem;border-radius:999px;font-size:.75rem;font-weight:500}.invites-pill-claimed{background-color:#eaf7ed;color:#285e33;border:1px solid #b5d3bc}.invites-pill-unused{background-color:#fdf3d7;color:#7a5a10;border:1px solid #ecd68a}.admin-shell{min-height:100vh;background-color:#f5f4f0;display:flex;flex-direction:column}.admin-header{background-color:#fff;border-bottom:1px solid #e9e7e4;position:sticky;top:0;z-index:20}.admin-header-inner{display:flex;align-items:center;justify-content:space-between;height:64px;padding:0 1.5rem}.admin-brand{display:flex;align-items:center;gap:.5rem;color:#285e33;font-weight:700;font-size:1.25rem}.admin-brand .admin-tag{background-color:#285e33;color:#fff;font-size:.6rem;font-weight:700;letter-spacing:.06em;padding:.15rem .4rem;border-radius:3px;text-transform:uppercase}.admin-header-right{display:flex;align-items:center;gap:1rem}.admin-site-link{color:#7a7366;font-size:.8rem;text-decoration:none;transition:color .15s ease}.admin-site-link:hover{color:#285e33}.admin-user-badge{display:flex;align-items:center;gap:.5rem;padding:.35rem .7rem;background-color:#f7f9ea;border:1px solid #d9e3b6;border-radius:999px;font-size:.75rem;color:#4e4941}.admin-user-badge .admin-role-dot{width:8px;height:8px;border-radius:50%;background-color:#749b3a}.admin-user-badge .admin-role-label{font-weight:600;color:#285e33;text-transform:uppercase;font-size:.65rem;letter-spacing:.05em}.admin-body{display:flex;flex:1}.admin-sidebar{width:220px;background-color:#fff;border-right:1px solid #e9e7e4;padding-top:1rem;padding-bottom:1.5rem}.admin-sidebar ul{list-style:none;padding:0;margin:0}.admin-sidebar .nav-row{border-left:3px solid transparent;transition:all .15s ease}.admin-sidebar .nav-row:hover{background-color:#f7f9ea}.admin-sidebar .nav-row.active{background-color:#f7f9ea;border-left:3px solid #749b3a}.admin-sidebar a{display:flex;align-items:center;padding:.65rem 1rem;color:#7a7366;text-decoration:none;font-weight:500;font-size:.8rem;gap:.5rem;transition:color .15s ease}.admin-sidebar .nav-row:hover a{color:#4e4941}.admin-sidebar .nav-row.active a{color:#749b3a;font-weight:600}.admin-sidebar a i{width:1rem;text-align:center;font-size:.8rem}.admin-main{flex:1;min-width:0;padding:1.5rem 2rem}.admin-panel-heading{font-size:1.5rem;font-weight:700;color:#285e33;margin:0 0 .25rem}.admin-panel-subheading{font-size:.9rem;color:#7a7366;margin:0 0 1.5rem}.admin-placeholder{background-color:#fff;border:1px dashed #d1cdc7;border-radius:6px;padding:3rem 1.5rem;text-align:center;color:#7a7366}.admin-placeholder i{font-size:2rem;color:#d1cdc7;margin-bottom:.75rem;display:block}.featured-recipes{margin-bottom:2rem}.featured-recipes-header{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:.75rem}.featured-recipes-header h2{font-size:1.05rem;font-weight:700;color:#285e33;margin:0;display:flex;align-items:center;gap:.4rem}.featured-recipes-header h2 i{color:#d4a017}.featured-recipes-header p{margin:.15rem 0 0;color:#7a7366;font-size:.8rem}.featured-loading,.featured-error{padding:.75rem 1rem;border-radius:6px;font-size:.85rem}.featured-loading{color:#7a7366;background-color:#faf9f5;border:1px solid #e9e7e4}.featured-error{color:#922b21;background-color:#fdecea;border:1px solid #f5b7b1}.featured-strip{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:1rem}.featured-card{display:flex;flex-direction:column;background-color:#fff;border:1px solid #e9e7e4;border-radius:8px;padding:0;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease;overflow:hidden;text-align:left;font:inherit;color:inherit}.featured-card:hover{transform:translateY(-2px);box-shadow:0 6px 20px #00000014}.featured-card-image{position:relative;aspect-ratio:4 / 3;overflow:hidden;background-color:#f2f0eb}.featured-card-image img{width:100%;height:100%;object-fit:cover}.featured-card-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:#b6ada0;font-size:2rem}.featured-badge{position:absolute;top:.5rem;left:.5rem;display:inline-flex;align-items:center;gap:.25rem;padding:.15rem .5rem;background-color:#fffffff2;border-radius:999px;font-size:.65rem;font-weight:700;color:#8a6100;text-transform:uppercase;letter-spacing:.04em;box-shadow:0 1px 3px #0000001a}.featured-badge i{color:#d4a017}.featured-card-body{padding:.65rem .75rem .85rem}.featured-card-body h3{margin:0 0 .15rem;font-size:.9rem;font-weight:600;color:#4e4941;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.featured-card-author{margin:0;font-size:.72rem;color:#a8a196}.recipe-detail{position:relative;background:#fff;border-radius:.75rem;border:1px solid #e9e7e4;overflow:hidden}.recipe-detail-title-bar{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem}.recipe-detail-title-separator{margin:0 1.5rem;border:none;border-top:1px solid #e0ddd9}.recipe-detail-title{font-size:1.5rem;font-weight:700;color:#333;margin:0;line-height:1.2}.recipe-detail-close-btn{background:none;border:none;font-size:1.25rem;cursor:pointer;color:#999;line-height:1;padding:.25rem;transition:color .15s}.recipe-detail-close-btn:hover{color:#666}.recipe-detail-layout{display:grid;grid-template-columns:300px 1fr;gap:0;align-items:start}.recipe-detail-left{padding:1.5rem}.recipe-detail-image{width:100%;aspect-ratio:4/3;border-radius:.5rem;overflow:hidden;margin-bottom:1rem;background:#f3f2ee}.recipe-detail-image img{width:100%;height:100%;object-fit:cover}.recipe-detail-image-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:#f3f2ee}.recipe-detail-action-bar{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.25rem;padding-bottom:1.25rem;border-bottom:1px solid #e9e7e4}.recipe-detail-servings-control{display:flex;align-items:center;gap:.5rem}.recipe-detail-action-icons{display:flex;align-items:center;gap:.75rem}.recipe-detail-action-icon{background:none;border:none;cursor:pointer;padding:0;color:#7a7366;font-size:1.25rem;line-height:1;transition:color .15s}.recipe-detail-action-icon:hover{color:#749b3a}.recipe-detail-meal-plan-btn{display:inline-block;padding:.375rem 1rem;border:2px solid #749b3a;border-radius:.375rem;color:#749b3a;font-size:.8125rem;font-weight:500;background:transparent;cursor:pointer;transition:background .15s,color .15s}.recipe-detail-meal-plan-btn:hover{background:#749b3a;color:#fff}.recipe-detail-stars{display:flex;gap:.25rem}.recipe-detail-stars i{color:#d1cfc9;font-size:.875rem;cursor:pointer;transition:color .15s}.recipe-detail-stars i.rated,.recipe-detail-stars i:hover{color:#ffa900}.recipe-detail-nutrition{padding-top:0}.recipe-detail-nutrition-table{display:flex;flex-direction:column;gap:0}.recipe-detail-nutrition-row{display:flex;align-items:center;justify-content:space-between;padding:.5rem .75rem;border:1px solid #e9e7e4;border-bottom:none;font-size:.8125rem}.recipe-detail-nutrition-row:first-child{border-radius:.375rem .375rem 0 0}.recipe-detail-nutrition-row:last-child{border-bottom:1px solid #e9e7e4;border-radius:0 0 .375rem .375rem}.recipe-detail-nutrition-label{display:flex;align-items:center;gap:.5rem;color:#4e4941}.recipe-detail-nutrition-label strong{font-weight:600}.recipe-detail-nutrition-dv{font-size:.6875rem;color:#9a948d;font-style:italic}.recipe-detail-nutrition-value{font-weight:600;color:#4e4941}.recipe-detail-right{padding:.75rem 2rem 1.5rem}.recipe-detail-section-heading{font-size:1.05rem;font-weight:700;color:#555;margin:0 0 .75rem}.recipe-detail-subsection-heading{font-size:.875rem;font-weight:600;color:#7a7366;margin:1rem 0 .5rem;text-transform:uppercase;letter-spacing:.03em}.recipe-detail-section{margin-bottom:2rem}.recipe-detail-ingredients-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.75rem}.recipe-detail-ingredients-header .recipe-detail-section-heading{margin-bottom:0}.recipe-detail-servings-btn{background:none;border:none;cursor:pointer;padding:0;line-height:1;transition:opacity .15s}.recipe-detail-servings-btn:hover{opacity:.7}.recipe-detail-icon-btn{background:none;border:none;cursor:pointer;padding:0;line-height:1;color:#7a7366;transition:color .15s}.recipe-detail-icon-btn:hover{color:#749b3a}.recipe-detail-ingredients-list{list-style:none;padding:0;margin:0;margin-left:1rem;font-size:.9rem;color:#4e4941}.recipe-detail-ingredient-item{padding:.25rem 0}.recipe-detail-ingredient-label{display:flex;align-items:flex-start;gap:.6rem;cursor:pointer;line-height:1.6}.recipe-detail-ingredient-checkbox{width:16px;height:16px;margin-top:3px;flex-shrink:0;cursor:pointer;accent-color:#749b3a}.recipe-detail-ingredient-checked{text-decoration:line-through;color:#aaa}.recipe-detail-time-bar{display:flex;gap:2rem;margin-bottom:1.5rem;margin-top:.5rem;margin-left:1rem}.recipe-detail-time-item{display:flex;flex-direction:column;align-items:center}.recipe-detail-time-label{font-size:.6875rem;color:#9a948d;text-transform:uppercase}.recipe-detail-time-value{font-size:.875rem;font-weight:600;color:#4e4941}.recipe-detail-directions-list{list-style:none;padding:0;margin-left:1rem;font-size:.9rem;color:#4e4941;line-height:1.7}.recipe-detail-directions-list li{display:flex;align-items:flex-start;gap:.75rem;margin-bottom:1rem}.recipe-detail-step-num{width:24px;height:24px;border-radius:50%;background:#e2e0dc;color:#7a7366;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:600;flex-shrink:0}.recipe-detail-notes-edit-icon{display:inline-flex;align-items:center;justify-content:center;padding:0;border:none;background:transparent;color:#7a7366;font-size:.95rem;cursor:pointer;transition:color .15s}.recipe-detail-notes-edit-icon:hover{color:#749b3a}.recipe-detail-add-note-btn{display:inline-flex;align-items:center;padding:.375rem 1rem;border:1px solid #d1cfc9;border-radius:.375rem;background:#fff;color:#7a7366;font-size:.8125rem;cursor:pointer;transition:border-color .15s,color .15s}.recipe-detail-add-note-btn:hover{border-color:#749b3a;color:#749b3a}.recipe-detail-tags-section{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem;padding-top:1.25rem;border-top:1px solid #e9e7e4}.recipe-detail-tag{display:inline-block;padding:.25rem .625rem;border:1px solid #d1cfc9;border-radius:.25rem;font-size:.6875rem;font-weight:600;color:#7a7366;letter-spacing:.025em;background:#fff}.report-modal-backdrop{position:fixed;inset:0;background-color:#00000080;z-index:50;display:flex;align-items:center;justify-content:center;padding:1rem}.report-modal{background-color:#fff;border-radius:8px;padding:1.5rem 1.5rem 1.25rem;max-width:460px;width:100%;box-shadow:0 10px 40px #00000026}.report-modal-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}.report-modal-icon{width:40px;height:40px;border-radius:999px;background-color:#fef3c7;color:#b45309;display:flex;align-items:center;justify-content:center;font-size:1rem;flex-shrink:0}.report-modal h3{margin:0;color:#4e4941;font-size:1.1rem}.report-modal-desc{color:#7a7366;font-size:.85rem;line-height:1.4;margin:0 0 1rem}.report-modal-success{color:#285e33;font-size:.9rem;line-height:1.4;margin:0 0 .5rem}.report-modal-field{display:flex;flex-direction:column;gap:.35rem;margin-bottom:.85rem}.report-modal-field>span{font-size:.78rem;font-weight:600;color:#4e4941;text-transform:uppercase;letter-spacing:.03em}.report-modal-field select,.report-modal-field textarea{width:100%;padding:.55rem .7rem;border:1px solid #d9d5cd;border-radius:4px;background-color:#fbfaf7;font-size:.9rem;color:#4e4941;font-family:inherit;transition:border-color .15s ease}.report-modal-field textarea{resize:vertical;min-height:80px}.report-modal-field select:focus,.report-modal-field textarea:focus{outline:none;border-color:#749b3a;background-color:#fff}.report-modal-error{background-color:#fdecea;border:1px solid #f5b7b1;color:#922b21;padding:.6rem .75rem;border-radius:4px;font-size:.8rem;margin:0 0 .75rem}.report-modal-buttons{display:flex;gap:.6rem;margin-top:.5rem;justify-content:flex-end}.report-modal-btn{padding:.55rem 1.1rem;border-radius:4px;font-size:.85rem;font-weight:600;cursor:pointer;border:1px solid transparent;transition:all .15s ease}.report-modal-btn.cancel{background-color:#fff;color:#4e4941;border-color:#d9d5cd}.report-modal-btn.cancel:hover:not(:disabled){background-color:#faf9f5}.report-modal-btn.primary{background-color:#749b3a;color:#fff}.report-modal-btn.primary:hover:not(:disabled){background-color:#5f8330}.report-modal-btn:disabled{opacity:.6;cursor:not-allowed}@media(max-width:768px){.recipe-detail-layout{grid-template-columns:1fr}.recipe-detail-left{border-bottom:1px solid #e9e7e4}}#print-container{display:none}@media print{.recipe-detail{border:none!important;border-radius:0!important;overflow:visible!important}#print-container{display:block;box-sizing:border-box;overflow:hidden}.print-header{display:flex;align-items:flex-start;gap:.25in;padding-bottom:.15in}.print-header-image{width:1.8in;height:1.35in;flex-shrink:0;border-radius:4px;overflow:hidden;-webkit-print-color-adjust:exact;print-color-adjust:exact}.print-header-image img{width:100%;height:100%;object-fit:cover}.print-header-info{flex:1;min-width:0;padding-top:.05in}.print-title{font-family:Lato,sans-serif;font-size:20pt;font-weight:700;margin:0 0 2px;line-height:1.2}.print-source{font-family:Lato,sans-serif;font-size:10pt;margin:0 0 .1in}.print-meta{display:flex;gap:.4in}.print-meta-item{display:flex;flex-direction:column}.print-meta-label{font-family:Lato,sans-serif;font-size:8pt}.print-meta-value{font-family:Lato,sans-serif;font-size:11pt;font-weight:600}.print-divider{border:none;border-top:1px solid #aaa;margin:.1in 0 .2in}.print-body{display:grid;grid-template-columns:2.2in 1fr;gap:.3in;align-items:start}.print-section-title{font-family:Lato,sans-serif;font-size:10pt;font-weight:700;margin:0 0 .1in;letter-spacing:.04em}.print-subsection-title{font-family:Lato,sans-serif;font-size:9pt;font-weight:700;margin:.08in 0 .04in;color:#444}.print-ingredients-list{list-style:none;padding:0;margin:0}.print-ingredients-list li{display:flex;align-items:flex-start;gap:.06in;font-family:Lato,sans-serif;font-size:9.5pt;line-height:1.5;margin-bottom:.02in}.print-checkbox{display:inline-block;width:9px;height:9px;border:1px solid #888;flex-shrink:0;margin-top:2.5px;-webkit-print-color-adjust:exact;print-color-adjust:exact}.print-right-column{display:flex;flex-direction:column;min-width:0;overflow-wrap:break-word;word-wrap:break-word}.print-directions-list{list-style:none;padding:0;margin:0}.print-directions-list li{display:flex;align-items:flex-start;gap:.06in;font-family:Lato,sans-serif;font-size:9.5pt;line-height:1.5;margin-bottom:.06in}.print-directions-list li>span:last-child{min-width:0;overflow-wrap:break-word;word-wrap:break-word}.print-step-num{flex-shrink:0;font-weight:700}.print-notes{margin-top:.2in;padding-top:.1in;border-top:1px solid #bbb}.print-notes-text{font-family:Lato,sans-serif;font-size:9.5pt;line-height:1.5;margin:0}}.splash-screen{position:fixed;inset:0;background-image:url(/assets/splash-bg-BULW7cOF.jpg);background-size:cover;background-position:center;z-index:50}.splash-overlay{position:absolute;inset:0;background-color:#00000080}.splash-content{position:relative;z-index:10;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;text-align:center;color:#fff;padding:2rem}.splash-title{font-size:4rem;font-weight:700;font-family:Trocchi,serif;margin-bottom:.5rem;text-shadow:0 2px 4px rgba(0,0,0,.5)}.splash-subtitle{font-size:1.5rem;font-weight:300;margin-bottom:2rem;text-shadow:0 1px 3px rgba(0,0,0,.4)}.splash-notice{display:flex;align-items:center;gap:.55rem;background-color:#dc2626eb;color:#fff;padding:.6rem 1rem;border-radius:.5rem;font-size:.9rem;max-width:360px;margin:0 0 1.25rem;text-align:left;box-shadow:0 2px 8px #00000040}.splash-notice i{font-size:1rem}.splash-login-options{display:flex;flex-direction:column;align-items:center;gap:.75rem;width:100%;max-width:320px}.splash-login-button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:.75rem 1.5rem;font-size:.95rem;font-weight:600;border-radius:.5rem;box-shadow:0 2px 8px #0003;transition:all .2s ease-in-out;border:1px solid rgba(0,0,0,.1);cursor:pointer}.splash-google-button{background-color:#ffffffe6;color:#333}.splash-google-button:hover{background-color:#fff;box-shadow:0 4px 12px #0000004d;transform:translateY(-2px)}.splash-email-button{background-color:#ffa900e6;color:#fff}.splash-email-button:hover{background-color:#ffa900;box-shadow:0 4px 12px #0000004d;transform:translateY(-2px)}.splash-email-form{display:flex;flex-direction:column;gap:.75rem;width:100%;max-width:320px}.splash-input{width:100%;padding:.75rem 1rem;border-radius:.5rem;border:1px solid rgba(255,255,255,.3);background-color:#ffffffe6;color:#333;font-size:.95rem;outline:none;transition:border-color .2s}.splash-input:focus{border-color:#ffa900;box-shadow:0 0 0 2px #ffa9004d}.splash-input::placeholder{color:#999}.splash-error{background-color:#dc2626e6;color:#fff;padding:.5rem .75rem;border-radius:.375rem;font-size:.85rem;text-align:left}.splash-toggle-link{background:none;border:none;color:#fffc;font-size:.85rem;cursor:pointer;padding:0;transition:color .2s}.splash-toggle-link:hover{color:#fff;text-decoration:underline}.splash-back-link{background:none;border:none;color:#fff9;font-size:.85rem;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;gap:.35rem;transition:color .2s}.splash-back-link:hover{color:#fff}.splash-pending{display:flex;flex-direction:column;align-items:center;gap:.75rem;width:100%;max-width:380px;background-color:#00000059;border:1px solid rgba(255,255,255,.15);border-radius:.75rem;padding:1.5rem 1.25rem;text-align:center}.splash-pending h2{margin:.25rem 0 0;font-size:1.35rem;font-weight:600}.splash-pending p{margin:0;font-size:.9rem;line-height:1.5;color:#ffffffd9}.splash-pending p strong{color:#fff;font-weight:600}.splash-pending-icon{font-size:2rem;color:#ffa900}.splash-pending-icon.success{color:#6dc37b}.splash-request-form{display:flex;flex-direction:column;gap:.75rem;width:100%;margin-top:.5rem}.splash-textarea{resize:vertical;font-family:inherit;min-height:4rem}.splash-legal{margin-top:1.5rem;font-size:.8rem;color:#fff9;max-width:320px;line-height:1.4}.splash-legal a{color:#ffffffd9;text-decoration:underline;transition:color .2s}.splash-legal a:hover{color:#fff}.privacy-page{min-height:100vh;background-color:#fbf7f0;color:#222}.privacy-header{background-color:#fff;border-bottom:1px solid #e5e5e5;position:sticky;top:0;z-index:10}.privacy-header-inner{max-width:800px;margin:0 auto;padding:1rem 1.25rem;display:flex;align-items:center;justify-content:space-between}.privacy-brand{display:flex;align-items:center;gap:.5rem;font-family:Trocchi,serif;font-size:1.35rem;font-weight:700;color:#14532d}.privacy-brand i{color:#ffa900}.privacy-back{background:none;border:none;color:#14532d;font-size:.9rem;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:.35rem;padding:.4rem .6rem;border-radius:.375rem;transition:background-color .15s ease}.privacy-back:hover{background-color:#14532d14}.privacy-content{max-width:800px;margin:0 auto;padding:2.5rem 1.5rem 4rem;line-height:1.6}.privacy-content h1{font-family:Trocchi,serif;font-size:2.25rem;margin:0 0 .35rem;color:#14532d}.privacy-updated{color:#6b7280;font-size:.9rem;margin:0 0 2rem}.privacy-content h2{font-size:1.2rem;margin:2rem 0 .5rem;color:#14532d}.privacy-content p,.privacy-content li{font-size:.95rem;color:#333}.privacy-content ul{padding-left:1.25rem;margin:.5rem 0 1rem}.privacy-content li{margin-bottom:.35rem}.privacy-content a{color:#14532d;text-decoration:underline}.terms-page{min-height:100vh;background-color:#fbf7f0;color:#222}.terms-header{background-color:#fff;border-bottom:1px solid #e5e5e5;position:sticky;top:0;z-index:10}.terms-header-inner{max-width:800px;margin:0 auto;padding:1rem 1.25rem;display:flex;align-items:center;justify-content:space-between}.terms-brand{display:flex;align-items:center;gap:.5rem;font-family:Trocchi,serif;font-size:1.35rem;font-weight:700;color:#14532d}.terms-brand i{color:#ffa900}.terms-back{background:none;border:none;color:#14532d;font-size:.9rem;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:.35rem;padding:.4rem .6rem;border-radius:.375rem;transition:background-color .15s ease}.terms-back:hover{background-color:#14532d14}.terms-content{max-width:800px;margin:0 auto;padding:2.5rem 1.5rem 4rem;line-height:1.6}.terms-content h1{font-family:Trocchi,serif;font-size:2.25rem;margin:0 0 .35rem;color:#14532d}.terms-updated{color:#6b7280;font-size:.9rem;margin:0 0 2rem}.terms-content h2{font-size:1.2rem;margin:2rem 0 .5rem;color:#14532d}.terms-content p,.terms-content li{font-size:.95rem;color:#333}.terms-content ul{padding-left:1.25rem;margin:.5rem 0 1rem}.terms-content li{margin-bottom:.35rem}.terms-content a{color:#14532d;text-decoration:underline}.cook-view-overlay{position:fixed;inset:0;z-index:100;background:#f7f9ea;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:1.5rem 1.25rem 3rem}.cook-view-close{position:fixed;top:.75rem;right:.75rem;z-index:101;background:#ffffffe6;border:1px solid #e9e7e4;border-radius:50%;width:36px;height:36px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#7a7366;font-size:1rem;transition:background .15s}.cook-view-close:hover{background:#fff;color:#333}.cook-view-title{font-size:1.5rem;font-weight:700;color:#333;margin:0 0 1.5rem;padding-right:2.5rem;line-height:1.3;text-align:center}.cook-view-columns{display:flex;gap:2rem;max-width:1100px;margin:0 auto}.cook-view-col-left{flex:0 0 35%;min-width:0}.cook-view-col-right{flex:1;min-width:0}.cook-view-section{margin-bottom:2rem}.cook-view-heading{font-size:1.1rem;font-weight:700;color:#749b3a;text-transform:uppercase;letter-spacing:.04em;margin:0 0 .75rem;padding-bottom:.375rem;border-bottom:2px solid #749b3a}.cook-view-subheading{font-size:.875rem;font-weight:600;color:#7a7366;margin:1rem 0 .5rem;text-transform:uppercase;letter-spacing:.03em}.cook-view-list,.cook-view-directions{list-style:none;padding:0;margin:0}.cook-view-item{display:flex;align-items:flex-start;gap:.625rem;padding:.5rem;margin-bottom:2px;border-radius:.25rem;cursor:pointer;font-size:.95rem;color:#333;line-height:1.5;transition:background .1s;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent}.cook-view-item:active{background:#749b3a14}.cook-view-item.crossed{color:#b0aba3}.cook-view-item.crossed>span:not(.cook-view-check):not(.cook-view-step-num){text-decoration:line-through}.cook-view-check{width:20px;height:20px;border:2px solid #749b3a;border-radius:3px;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:.75rem;font-weight:700;color:#749b3a;margin-top:2px;transition:border-color .15s,color .15s,background .15s}.cook-view-item.crossed .cook-view-check{border-color:#d1cfc9;background:#d1cfc9;color:#fff}.cook-view-step-num{width:24px;height:24px;border-radius:50%;background:#749b3a;color:#fff;display:flex;align-items:center;justify-content:center;font-size:.6875rem;font-weight:700;flex-shrink:0;transition:background .15s,color .15s}.cook-view-item.crossed .cook-view-step-num{background:#e2e0dc;color:#7a7366}.cook-view-detail{color:#9a948d}.cook-view-item.crossed .cook-view-detail{color:#c5c0b9}.shopping-category-header{display:flex;align-items:center;gap:.5rem;padding:.5rem 0;cursor:pointer;-webkit-user-select:none;user-select:none}.shopping-category-header:hover{opacity:.8}.shopping-category-header .category-chevron{transition:transform .2s ease;font-size:.65rem;color:#7a7366;width:1rem;text-align:center}.shopping-category-header .category-chevron.collapsed{transform:rotate(-90deg)}.shopping-item{display:flex;align-items:center;gap:.75rem;padding:.6rem .75rem;border-radius:.5rem;transition:background-color .15s ease}.shopping-item:hover{background-color:#749b3a0f}.shopping-item-checkbox{width:1.25rem;height:1.25rem;border:2px solid #d1cdc7;border-radius:.25rem;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:all .15s ease;background:#fff}.shopping-item-checkbox:hover{border-color:#749b3a}.shopping-item-checkbox.checked{background-color:#749b3a;border-color:#749b3a}.shopping-item-checkbox.checked i{color:#fff;font-size:.6rem}.shopping-item-text{flex:1;font-size:.9rem;color:#4e4941;line-height:1.4}.shopping-item-text.checked{text-decoration:line-through;color:#bfb9b2}.shopping-item-source{font-size:.7rem;color:#a09a93;margin-top:.1rem}.shopping-item-delete{opacity:0;background:none;border:none;color:#d1cdc7;cursor:pointer;padding:.25rem;font-size:.8rem;transition:all .15s ease;flex-shrink:0}.shopping-item:hover .shopping-item-delete{opacity:1}.shopping-item-delete:hover{color:#e74c3c}.shopping-add-row{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;border:1px dashed #d1cdc7;border-radius:.5rem;margin-bottom:1.5rem;background:#fff;transition:border-color .15s ease}.shopping-add-row:focus-within{border-color:#749b3a;box-shadow:0 0 0 2px #749b3a1a}.shopping-add-row-icon{color:#749b3a;font-size:1.15rem;font-weight:700;cursor:pointer;-webkit-user-select:none;user-select:none;line-height:1;flex-shrink:0}.shopping-add-row input{flex:1;background:transparent;border:none;font-size:.9rem;outline:none;color:#4e4941}.shopping-add-row input::placeholder{color:#a09a93}.shopping-add-btn{padding:.35rem .75rem;background-color:#749b3a;color:#fff;border:none;border-radius:.375rem;font-size:.8rem;font-weight:500;cursor:pointer;transition:background-color .15s ease,opacity .15s ease;white-space:nowrap}.shopping-add-btn:hover:not(:disabled){background-color:#5f8230}.shopping-add-btn:disabled{opacity:.4;cursor:not-allowed}.shopping-clear-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.5rem 1rem;background:none;border:1px solid #e74c3c;border-radius:.5rem;color:#e74c3c;font-size:.8rem;font-weight:500;cursor:pointer;transition:all .15s ease}.shopping-clear-btn:hover{background-color:#e74c3c;color:#fff}.shopping-categories-grid{columns:2;column-gap:1.5rem}.shopping-category-block{break-inside:avoid;margin-bottom:.75rem}@media(max-width:768px){.shopping-categories-grid{columns:1}}.category-count{font-size:.7rem;color:#a09a93;font-weight:400}#shopping-print-container{display:none}@media print{#shopping-print-container{display:block!important;width:100%;font-family:Lato,sans-serif;color:#000!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.shopping-print-title{font-size:22pt;font-weight:700;margin:0 0 .15in}.shopping-print-meta{font-size:10pt;color:#666!important;margin-bottom:.15in}.shopping-print-divider{border:none;border-top:1.5px solid #ccc;margin:.1in 0 .2in}.shopping-print-categories{columns:2;column-gap:.4in}.shopping-print-category{break-inside:avoid;margin-bottom:.2in}.shopping-print-category-title{font-size:11pt;font-weight:700;text-transform:uppercase;letter-spacing:.03em;margin:0 0 .08in;padding-bottom:.04in;border-bottom:1px solid #ddd}.shopping-print-items{list-style:none;padding:0;margin:0}.shopping-print-items li{display:flex;align-items:baseline;gap:.08in;font-size:10pt;line-height:1.7}.shopping-print-checkbox{display:inline-block;width:9px;height:9px;border:1.5px solid #666;border-radius:2px;flex-shrink:0;position:relative;top:1px}}.organize-recipes{display:flex;flex-direction:column;gap:1rem}.organize-toolbar{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;background-color:#fff;border:1px solid #e9e7e4;border-radius:6px;padding:.75rem 1rem}.organize-search{position:relative;flex:1 1 260px;min-width:200px}.organize-search i{position:absolute;left:.7rem;top:50%;transform:translateY(-50%);color:#a8a196;font-size:.8rem}.organize-search input{width:100%;padding:.5rem .75rem .5rem 2rem;border:1px solid #d9d5cd;border-radius:4px;background-color:#fbfaf7;font-size:.85rem;color:#4e4941;transition:border-color .15s ease}.organize-search input:focus{outline:none;border-color:#749b3a;background-color:#fff}.organize-select{padding:.5rem .75rem;border:1px solid #d9d5cd;border-radius:4px;background-color:#fff;font-size:.85rem;color:#4e4941;cursor:pointer}.organize-select:focus{outline:none;border-color:#749b3a}.organize-filter-toggle{display:inline-flex;align-items:center;gap:.35rem;font-size:.8rem;color:#4e4941;cursor:pointer;-webkit-user-select:none;user-select:none;padding:.35rem .6rem;border-radius:4px;border:1px solid transparent}.organize-filter-toggle:hover{background-color:#faf9f5}.organize-filter-toggle.active{background-color:#e6f0e8;border-color:#b5d3bc;color:#285e33}.organize-count{margin-left:auto;font-size:.75rem;color:#7a7366}.organize-clear{font-size:.75rem;color:#7a7366;background:none;border:none;cursor:pointer;text-decoration:underline}.organize-clear:hover{color:#4e4941}.organize-bulkbar{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;background-color:#e6f0e8;border:1px solid #b5d3bc;border-radius:6px;padding:.6rem 1rem;color:#285e33;font-size:.85rem}.organize-bulkbar-label{font-weight:600}.organize-bulkbar-btn{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .7rem;border-radius:4px;font-size:.78rem;font-weight:600;cursor:pointer;border:1px solid #b5d3bc;background-color:#fff;color:#285e33;transition:all .15s ease}.organize-bulkbar-btn:hover:not(:disabled){background-color:#d1e5d5}.organize-bulkbar-btn.danger{border-color:#f5b7b1;color:#922b21}.organize-bulkbar-btn.danger:hover:not(:disabled){background-color:#fdecea}.organize-bulkbar-btn:disabled{opacity:.5;cursor:not-allowed}.organize-bulkbar-clear{margin-left:auto;background:none;border:none;color:#285e33;font-size:.78rem;cursor:pointer;text-decoration:underline}.organize-table-wrap{background-color:#fff;border:1px solid #e9e7e4;border-radius:6px;overflow-x:auto}.organize-table{width:100%;border-collapse:collapse;font-size:.85rem}.organize-table thead th{text-align:left;padding:.65rem 1rem;background-color:#faf9f5;border-bottom:1px solid #e9e7e4;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#7a7366;white-space:nowrap}.organize-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.organize-table th.sortable:hover{color:#4e4941}.organize-table th .sort-icon{margin-left:.35rem;font-size:.65rem;color:#a8a196}.organize-table th.sortable.active .sort-icon{color:#749b3a}.organize-table tbody td{padding:.6rem 1rem;border-bottom:1px solid #f2f0eb;color:#4e4941;vertical-align:middle}.organize-table tbody tr:last-child td{border-bottom:none}.organize-table tbody tr:hover{background-color:#fbfaf7}.organize-table tbody tr.selected{background-color:#f2f7ea}.organize-table tbody tr.selected:hover{background-color:#eaf2df}.organize-checkbox-col{width:1%;padding-right:0!important}.organize-thumb{width:48px;height:48px;border-radius:4px;object-fit:cover;background-color:#f2f0eb;display:block}.organize-thumb-placeholder{width:48px;height:48px;border-radius:4px;background-color:#f2f0eb;display:flex;align-items:center;justify-content:center;color:#a8a196}.organize-title{font-weight:600;color:#4e4941;max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}.organize-title:hover{color:#285e33;text-decoration:underline}.organize-cookbook-select{padding:.3rem .5rem;border:1px solid transparent;border-radius:4px;background-color:transparent;font-size:.8rem;color:#4e4941;cursor:pointer;max-width:180px}.organize-cookbook-select:hover{background-color:#faf9f5;border-color:#e9e7e4}.organize-cookbook-select:focus{outline:none;border-color:#749b3a;background-color:#fff}.organize-cookbook-select.uncategorized{color:#b6ada0;font-style:italic}.organize-tag-chips{display:flex;flex-wrap:wrap;gap:.25rem;align-items:center;min-height:26px;max-width:260px}.organize-chip{display:inline-flex;align-items:center;gap:.25rem;padding:.15rem .5rem;border-radius:999px;background-color:#eef4ff;color:#1a56db;border:1px solid #c9dcff;font-size:.7rem;font-weight:600}.organize-chip-remove{background:none;border:none;color:#1a56db;cursor:pointer;padding:0;font-size:.7rem;line-height:1;opacity:.6}.organize-chip-remove:hover{opacity:1}.organize-chip-empty{color:#b6ada0;font-style:italic;font-size:.75rem}.organize-tag-add{background:none;border:1px dashed #d9d5cd;border-radius:999px;color:#7a7366;padding:.1rem .5rem;font-size:.7rem;cursor:pointer}.organize-tag-add:hover{border-color:#749b3a;color:#285e33}.organize-visibility-select{padding:.25rem .5rem;border-radius:999px;border:1px solid #d9d5cd;background-color:#fff;font-size:.72rem;font-weight:600;cursor:pointer;color:#4e4941;transition:all .15s ease}.organize-visibility-select.public{color:#285e33;border-color:#b5d3bc;background-color:#eef4e5}.organize-visibility-select.private{color:#7a4a00;border-color:#e0ce9e;background-color:#fbf3d9}.organize-visibility-select:focus{outline:none;border-color:#749b3a}.organize-visibility-select:disabled{opacity:.6;cursor:not-allowed}.organize-rating{color:#f5b301;font-size:.8rem;white-space:nowrap}.organize-rating .muted-star{color:#e9e7e4}.organize-actions{display:inline-flex;gap:.75rem;align-items:center;white-space:nowrap}.organize-action-icon{background:none;border:none;cursor:pointer;padding:0;color:#7a7366;font-size:1.1rem;line-height:1;transition:color .15s}.organize-action-icon:hover{color:#749b3a}.organize-empty{text-align:center;color:#7a7366;padding:2.5rem 1rem!important;font-style:italic}.organize-popover{position:absolute;z-index:30;min-width:240px;background-color:#fff;border:1px solid #d9d5cd;border-radius:6px;box-shadow:0 8px 24px #0000001f;padding:.75rem}.organize-popover-title{font-size:.7rem;font-weight:700;text-transform:uppercase;color:#7a7366;letter-spacing:.05em;margin-bottom:.5rem}.organize-popover-options{display:flex;flex-wrap:wrap;gap:.3rem;margin-bottom:.5rem}.organize-popover-chip{display:inline-flex;align-items:center;gap:.25rem;padding:.2rem .55rem;border-radius:999px;background-color:#faf9f5;border:1px solid #e9e7e4;color:#4e4941;font-size:.72rem;cursor:pointer;transition:all .15s ease}.organize-popover-chip:hover{border-color:#749b3a;color:#285e33}.organize-popover-chip.selected{background-color:#eef4ff;border-color:#c9dcff;color:#1a56db}.organize-popover-add{display:flex;gap:.35rem}.organize-popover-input{flex:1;padding:.35rem .5rem;border:1px solid #d9d5cd;border-radius:4px;font-size:.78rem;background-color:#fbfaf7}.organize-popover-input:focus{outline:none;border-color:#749b3a;background-color:#fff}.organize-popover-addbtn{padding:.35rem .7rem;background-color:#749b3a;color:#fff;border:none;border-radius:4px;font-size:.75rem;font-weight:600;cursor:pointer}.organize-popover-addbtn:hover{background-color:#5c7d2c}.organize-popover-addbtn:disabled{opacity:.5;cursor:not-allowed}.organize-modal-backdrop{position:fixed;inset:0;background-color:#00000080;z-index:50;display:flex;align-items:center;justify-content:center;padding:1rem}.organize-modal{background-color:#fff;border-radius:8px;padding:1.5rem;max-width:480px;width:100%;box-shadow:0 10px 40px #00000026}.organize-modal h3{margin:0 0 .25rem;color:#4e4941;font-size:1.05rem}.organize-modal p{margin:0 0 1rem;color:#7a7366;font-size:.85rem}.organize-modal-mode{display:flex;gap:.5rem;margin-bottom:1rem}.organize-modal-mode button{flex:1;padding:.5rem;border-radius:4px;border:1px solid #d9d5cd;background-color:#fff;color:#4e4941;font-size:.8rem;font-weight:600;cursor:pointer}.organize-modal-mode button.active{background-color:#e6f0e8;border-color:#b5d3bc;color:#285e33}.organize-modal-buttons{display:flex;gap:.6rem;margin-top:1rem}.organize-modal-btn{flex:1;padding:.55rem 1rem;border-radius:4px;font-size:.85rem;font-weight:600;cursor:pointer;border:1px solid transparent;transition:all .15s ease}.organize-modal-btn.cancel{background-color:#fff;color:#4e4941;border-color:#d9d5cd}.organize-modal-btn.cancel:hover{background-color:#faf9f5}.organize-modal-btn.confirm{background-color:#749b3a;color:#fff}.organize-modal-btn.confirm:hover:not(:disabled){background-color:#5c7d2c}.organize-modal-btn.confirm:disabled{opacity:.5;cursor:not-allowed}.organize-modal-btn.danger{background-color:#dc3545;color:#fff}.organize-modal-btn.danger:hover{background-color:#b52a37}.discover-recipes{display:flex;flex-direction:column;gap:1rem}.discover-header{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;flex-wrap:wrap}.discover-header h2{font-size:1.15rem;font-weight:700;color:#285e33;margin:0;display:flex;align-items:center;gap:.4rem}.discover-header h2 i{color:#285e33}.discover-header p{margin:.2rem 0 0;color:#7a7366;font-size:.85rem}.discover-shuffle{display:inline-flex;align-items:center;gap:.35rem;padding:.45rem .85rem;border-radius:4px;border:1px solid #b5d3bc;background:#fff;color:#285e33;font-size:.8rem;font-weight:600;cursor:pointer;transition:background .15s ease}.discover-shuffle:hover:not(:disabled){background:#eaf2df}.discover-shuffle:disabled{opacity:.5;cursor:not-allowed}.discover-loading,.discover-error{padding:.75rem 1rem;border-radius:6px;font-size:.85rem}.discover-loading{color:#7a7366;background-color:#faf9f5;border:1px solid #e9e7e4}.discover-error{color:#922b21;background-color:#fdecea;border:1px solid #f5b7b1}.discover-empty{text-align:center;padding:3rem 1rem;color:#7a7366;background-color:#fff;border:1px dashed #e9e7e4;border-radius:8px}.discover-empty i{font-size:2.25rem;color:#d9d5cd;display:block;margin-bottom:.75rem}.discover-empty h3{margin:0 0 .35rem;color:#4e4941;font-size:1rem}.discover-empty p{margin:0;font-size:.85rem}.discover-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem}.discover-card{display:flex;flex-direction:column;background-color:#fff;border:1px solid #e9e7e4;border-radius:8px;padding:0;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease;overflow:hidden;text-align:left;font:inherit;color:inherit}.discover-card:hover{transform:translateY(-2px);box-shadow:0 6px 20px #00000014}.discover-card-image{position:relative;aspect-ratio:4 / 3;overflow:hidden;background-color:#f2f0eb}.discover-card-image img{width:100%;height:100%;object-fit:cover}.discover-card-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:#b6ada0;font-size:2rem}.discover-card-body{padding:.7rem .85rem .9rem}.discover-card-body h3{margin:0 0 .2rem;font-size:.95rem;font-weight:600;color:#4e4941;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.discover-card-author{margin:0;font-size:.75rem;color:#a8a196}.discover-card-meta{margin:.25rem 0 0;font-size:.72rem;color:#749b3a;display:flex;align-items:center;gap:.3rem}.user-settings-backdrop{position:fixed;inset:0;background-color:#00000080;z-index:60;display:flex;align-items:flex-start;justify-content:center;padding:3rem 1rem;overflow-y:auto}.user-settings-modal{background:#fff;border-radius:.75rem;width:100%;max-width:560px;box-shadow:0 20px 60px #0003;display:flex;flex-direction:column;max-height:calc(100vh - 6rem)}.user-settings-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid #eeece8}.user-settings-header h2{margin:0;font-size:1.05rem;font-weight:700;color:#285e33;display:flex;align-items:center;gap:.4rem}.user-settings-header h2 i{color:#285e33}.user-settings-close{background:none;border:none;font-size:1.5rem;line-height:1;color:#a8a196;cursor:pointer}.user-settings-close:hover{color:#4e4941}.user-settings-body{padding:1.25rem;overflow-y:auto;display:flex;flex-direction:column;gap:1rem}.user-settings-section h3{margin:0 0 .35rem;font-size:.95rem;color:#4e4941}.user-settings-desc{margin:0 0 .75rem;color:#7a7366;font-size:.82rem;line-height:1.4}.user-settings-options{display:flex;flex-direction:column;gap:.6rem}.user-settings-option{display:flex;align-items:flex-start;gap:.6rem;padding:.75rem .85rem;border:1px solid #e5e2dc;border-radius:.5rem;background:#fbfaf7;cursor:pointer;transition:all .15s ease}.user-settings-option:hover{border-color:#b5d3bc;background:#f5f8f1}.user-settings-option.active{border-color:#749b3a;background:#eef4e5;box-shadow:inset 0 0 0 1px #749b3a}.user-settings-option input[type=radio]{margin-top:.2rem;accent-color:#749b3a}.user-settings-option-title{font-weight:600;color:#4e4941;font-size:.9rem;display:flex;align-items:center;gap:.4rem}.user-settings-option-title i{color:#749b3a;font-size:.85rem}.user-settings-option-desc{font-size:.75rem;color:#7a7366;margin-top:.15rem}.user-settings-error,.user-settings-success{padding:.6rem .85rem;border-radius:6px;font-size:.82rem;display:flex;align-items:center;gap:.4rem}.user-settings-error{color:#922b21;background-color:#fdecea;border:1px solid #f5b7b1}.user-settings-success{color:#285e33;background-color:#eef4e5;border:1px solid #b5d3bc}.user-settings-footer{display:flex;justify-content:flex-end;gap:.6rem;padding:1rem 1.25rem;border-top:1px solid #eeece8;background-color:#fafaf8;border-radius:0 0 .75rem .75rem}.user-settings-btn{padding:.55rem 1.1rem;border-radius:4px;font-size:.85rem;font-weight:600;cursor:pointer;border:1px solid transparent;transition:all .15s ease;display:inline-flex;align-items:center;gap:.4rem}.user-settings-btn.cancel{background-color:#fff;color:#4e4941;border-color:#d9d5cd}.user-settings-btn.cancel:hover:not(:disabled){background-color:#faf9f5}.user-settings-btn.primary{background-color:#749b3a;color:#fff}.user-settings-btn.primary:hover:not(:disabled){background-color:#5c7d2c}.user-settings-btn:disabled{opacity:.55;cursor:not-allowed}
