body{font-optical-sizing:auto;background-color:#fafafa;margin:0;padding:0;font-family:Quicksand,sans-serif;font-style:normal;font-weight:300}Header,.homepage{margin:20px}button{border-radius:6px}.filters{grid-template-columns:repeat(auto-fill,minmax(110px,1fr));justify-content:center;justify-items:center;gap:12px;margin-bottom:20px;display:grid}.filters button{color:#6f5145;cursor:pointer;background:#fff;border:1px solid #dfcfc1;flex-direction:column;justify-content:center;align-items:center;width:110px;height:110px;padding:12px;font-size:12px;font-weight:500;transition:transform .15s,box-shadow .15s,background-color .15s;display:flex}.filters button:hover{transform:translateY(-2px);box-shadow:0 4px 8px #50322824}.filters button.active{color:#7d3f52;background:#f3d6dc;border-color:#c98c9c;box-shadow:inset 0 0 0 2px #f8e7ea,0 3px 6px #5032281f}.filters .icon{justify-content:center;align-items:center;width:52px;height:52px;margin-bottom:8px;display:flex}.filters button span{text-align:center;line-height:1.2}.filters button.active{background:#f3d6dc}.filters img.icon{object-fit:contain;width:52px;height:52px}.filters .material-symbols-outlined.icon{color:#000;font-variation-settings:"opsz" 48, "wght" 200, "FILL" 0, "GRAD" -50;font-size:60px;line-height:52px}.search-bar{justify-content:center;display:flex}.search-bar input{background-color:#fff;border:1px solid #ddd;border-radius:10px;outline:none;width:100%;padding:10px 14px;font-size:15px;transition:border-color .2s,box-shadow .2s}.search-bar input::placeholder{color:#aaa}.search-bar input:focus{border-color:#c77d9a;box-shadow:0 0 0 3px #c77d9a26}.paginate{justify-content:center;align-items:center;gap:10px;display:flex}.paginate button{color:#6f5360;cursor:pointer;background-color:#fff;border:1px solid #e2d5da;border-radius:8px;min-width:36px;height:36px;padding:0 10px;font-size:14px;font-weight:500;transition:background-color .2s,border-color .2s,color .2s}.paginate button:hover{cursor:pointer;background-color:#fff4f7;border-color:#c77d9a}.paginate button.active{color:#fff;background-color:#c77d9a;border-color:#c77d9a}.paginate button:disabled{opacity:.4;cursor:not-allowed}table{border-collapse:separate;border-spacing:0;table-layout:fixed;background:#fafafa;border:1px solid #eee;border-radius:12px;width:100%;overflow:hidden}table thead{background-color:#fff5f7}table th{text-align:left;color:#8f3f5f;border-bottom:1px solid #f0dfe4;padding:16px 20px;font-size:14px;font-weight:600}table th:first-child{width:5%}table th:nth-child(2){width:25%}table th:nth-child(3){width:20%}table th:nth-child(4){width:30%}table th:nth-child(5){width:7%}table th:nth-child(6){width:13%}table td{color:#463f3a;border-bottom:1px solid #f1f1f1;padding:18px 20px;font-size:15px}table td:first-child{width:5%}table td:nth-child(2){width:25%;font-weight:600}table td:nth-child(2) a{color:inherit;text-decoration:none}table td:nth-child(2) a:hover{color:#8f3f5f}table td:nth-child(3){width:20%}table td:nth-child(4){width:30%}table td:nth-child(5){width:10%}table td:nth-child(6){width:15%}table .tags{flex-wrap:wrap;gap:6px;display:flex}table .tags span{color:#8f3f5f;white-space:nowrap;background-color:#fce8ee;border-radius:999px;padding:4px 9px;font-size:12px;font-weight:500}table tr{transition:background-color .15s}table tr:hover{background-color:#fffafb}table tr:last-child td{border-bottom:none}table .icon{width:36px;height:36px}table .material-symbols-outlined.icon{color:#000;font-variation-settings:"opsz" 48, "wght" 200, "FILL" 0, "GRAD" -50;font-size:38px;line-height:36px}.recipe-table{margin-bottom:10px}.action{display:flex}.filter-actions{align-items:center;gap:10px;width:100%;margin-bottom:20px;display:flex}.action-search{flex:1;min-width:0}.action-search input{box-sizing:border-box;width:100%}.action-new{flex-shrink:0;justify-content:flex-end;display:flex}@media (width<=700px){.optional-column{display:none}}.homepage-actions{justify-content:flex-end;margin-bottom:20px;padding-right:24px;display:flex}.add-recipe-button{color:#8f3f5f;font:inherit;cursor:pointer;background:0 0;border:1px solid #b94f7a;padding:10px 18px;font-size:14px;font-weight:600;text-decoration:none;transition:background .2s,color .2s;display:inline-block}.add-recipe-button:hover,.homepage-actions button:hover{color:#fff;background:#b94f7a}.homepage-actions button:focus-visible{outline-offset:3px;outline:2px solid #8f3f5f}.recipe-detail-container{justify-content:center;width:100%;display:flex}.recipe-detail{color:#4f3a35;background:#fff8e9;border:1px solid #d8c5a8;border-radius:6px;min-width:80%;max-width:1200px;padding:45px 55px}.recipe-detail .recipe-title{border-bottom:2px solid #c98f8f;display:flex}.recipe-detail h1{color:#70434a;width:100%;margin:0 0 18px;padding-bottom:18px;font-size:2.7rem;font-weight:400;line-height:1.15}.recipe-detail .edit-button{background:0 0;border:none;display:flex}.recipe-detail .prep-details{gap:35px;margin:20px 0;display:flex}.recipe-detail .prep-details div{flex-direction:column;gap:3px;display:flex}.recipe-detail .prep-details strong{color:#8b5a52;text-transform:uppercase;letter-spacing:.08em;font-size:.75rem}.recipe-detail .prep-details span{font-size:1rem}.recipe-detail .tags{flex-wrap:wrap;gap:7px;margin:20px 0 28px;display:flex}.recipe-detail .tags span{color:#5d403b;background:#d99b9b;border-radius:12px;padding:5px 11px;font-size:.78rem;font-style:italic}.recipe-detail .tags span.source{color:#5d403b;background:#eadbc7;border-radius:12px;padding:5px 11px;font-size:.78rem;font-style:italic}.recipe-detail .tags span.kitchen,.recipe-detail .tags span.category{color:#5d403b;background:#ead8b9;border-radius:12px;padding:5px 11px;font-size:.78rem;font-style:italic}:is(.recipe-detail .ingredients,.recipe-detail .instructions):before{color:#70434a;margin-bottom:16px;font-size:1.5rem;font-weight:700;display:block}.recipe-detail .ingredients{margin-bottom:40px}.recipe-detail .ingredients:before{content:"Ingredients"}.recipe-detail .instructions{color:#4f3a35;padding-top:5px;font-size:1rem;line-height:1.8}.recipe-detail .instructions:before{content:"Instructions"}.recipe-detail .instructions>*{margin-bottom:12px}.recipe-detail .ingredient{border-bottom:1px dashed #d8c5a8;grid-template-columns:70px 70px 1fr;padding:8px 0;font-size:.98rem;display:grid}.recipe-detail .ingredient:last-child{border-bottom:none}.recipe-detail .ingredient .amount{text-align:right;padding-right:10px;font-weight:700}.recipe-detail .ingredient .uom{color:#80665e}.recipe-detail .ingredient .text{color:#4f3a35}.recipe-detail .conversion{align-items:center;gap:6px;margin:0 0 28px;display:flex}.recipe-detail .conversion button{color:#684941;cursor:pointer;background:#f3e4cd;border:1px solid #c9aaa0;border-radius:5px;min-width:48px;padding:7px 11px;font-size:.85rem;font-weight:600;transition:background-color .15s,transform .15s,box-shadow .15s}.recipe-detail .conversion button:hover{background:#ead2b8;transform:translateY(-1px)}.recipe-detail .conversion button.active{color:#fff8e9;background:#b97979;border-color:#a46767;box-shadow:inset 0 1px 2px #462d2326,0 1px 2px #462d231f}.recipe-detail .conversion button.active:hover{background:#b97979;transform:none}@media (width<=600px){.recipe-detail{margin:20px 10px;padding:30px 25px}.recipe-detail h1{font-size:2rem}.recipe-detail .prep-details{gap:20px}.recipe-detail .ingredient{grid-template-columns:55px 55px 1fr}}.recipe-images{max-width:500px}.recipe-images img{width:100%;max-width:500px;height:auto}.recipe-comments-container{color:#4f3a35;border-top:1px solid #d8c5a8;margin-top:32px;padding:24px 32px 0}.recipe-add-comment{gap:12px;margin-bottom:24px;display:flex}.recipe-add-comment input{color:#4f3a35;min-width:0;font:inherit;border:1px solid #d8c5a8;border-radius:6px;flex:1;padding:12px 14px}.recipe-add-comment input:focus{outline-offset:2px;outline:2px solid #c65b86}.recipe-add-comment button{color:#8f3f5f;font:inherit;cursor:pointer;background:0 0;border:1px solid #b94f7a;padding:10px 18px;font-size:14px;font-weight:600;transition:background .2s,color .2s}.recipe-add-comment button:hover{color:#fff;background:#b94f7a}.recipe-comments-list{flex-direction:column;gap:16px;display:flex}.recipe-comment{background:#fffdf8;border:1px solid #eadbc7;border-radius:6px;padding:16px 18px}.recipe-text{overflow-wrap:anywhere;margin-bottom:12px;line-height:1.5}.recipe-comment-meta{justify-content:space-between;align-items:center;gap:12px;font-size:13px;display:flex}.recipe-comment .user{color:#8f3f5f;font-weight:700}.recipe-comment .date{color:#927f73;font-size:12px}.comments-form{gap:10px;width:100%;display:flex}.comments-form input::placeholder{opacity:1}.rich-text-toolbar{gap:5px;display:flex}.rich-text-editor{box-sizing:border-box;color:#4f3a35;min-height:200px;font:inherit;background:#fffdf7;border:1px solid #cdbba0;padding:9px 10px}.rich-text-editor strong,.rich-text-editor b{font-weight:700!important}.rich-text-editor em,.rich-text-editor i{font-style:italic!important}.rich-text-editor u{text-decoration:underline!important}.editor-list-ul{list-style-type:disc}.editor-list-ol{list-style-type:decimal}.editor-list-item{margin-left:20px}.grouped-labels{flex-wrap:wrap;gap:10px;margin-bottom:10px;font-weight:600;display:flex}.grouped-labels label input,.grouped-labels label select{margin-left:5px}.new-recipe-container input,.new-recipe-container select{box-sizing:border-box;color:#4f3a35;font:inherit;background:#fffdf7;border:1px solid #cdbba0;border-radius:6px;padding:9px 10px}.new-recipe-container input:focus,.new-recipe-container select:focus{border-color:#a88c72;outline:none}.new-recipe-container select[multiple]{min-height:100px}.new-recipe-container>label:nth-of-type(5),.new-recipe-container>label:nth-of-type(6),.new-recipe-container>label:nth-of-type(7){max-width:250px}.new-recipe-container>label:last-of-type{margin-top:30px}.new-recipe-container>label:last-of-type>div{background:#fffdf7;border:1px solid #e0cfb5;grid-template-columns:100px 130px 1fr;gap:10px;margin-bottom:10px;padding:12px;display:grid}.new-recipe-container>label:last-of-type>div label{flex-direction:column;gap:5px;font-size:.9rem;font-weight:500;display:flex}.new-recipe-container button{color:#4f3a35;font:inherit;cursor:pointer;background:#f1e4cf;border:1px solid #b9a083;padding:9px 14px}.new-recipe-container button:hover{background:#e8d7bd}.new-recipe-container>button:last-child{margin-top:25px}.view-recipe{margin:20px}header{box-sizing:border-box;flex-wrap:wrap;justify-content:space-between;align-items:center;height:auto;min-height:80px;display:flex}header>div{align-items:center;gap:10px;display:flex}header img{object-fit:contain;width:auto;height:80px}header h1{font-optical-sizing:auto;color:#8f3f5f;margin:0;font-size:18px;font-style:normal;font-weight:300}header>div:last-child{align-items:center;display:flex}header button{color:#8f3f5f;font:inherit;cursor:pointer;background:0 0;border:1px solid #b94f7a;padding:8px 16px;font-size:14px;font-weight:600;transition:background .2s,color .2s}header button:hover{color:#fff;cursor:pointer;background:#b94f7a}header button:focus-visible{outline-offset:3px;outline:2px solid #8f3f5f}.login-container{color:#4f3a35;background:#fff8e9;justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.login-card{text-align:center;background:#fafafa;border:1px solid #d8c5a8;border-radius:8px;width:100%;max-width:420px;padding:40px;box-shadow:0 8px 24px #4f3a351a}.login-image{object-fit:contain;width:100%;max-width:260px;height:auto;margin:0 auto 24px;display:block}.login-card h1{margin:0 0 8px;font-size:1.8rem}.login-card p{color:#806b62;margin:0 0 28px}.login-card form{text-align:left;flex-direction:column;gap:18px;display:flex}.login-card label{flex-direction:column;gap:8px;font-weight:600;display:flex}.login-card input{box-sizing:border-box;color:#4f3a35;width:100%;font:inherit;background:#fffdf8;border:1px solid #d8c5a8;border-radius:5px;padding:12px 14px}.login-card input:focus{outline-offset:2px;outline:2px solid #c65b86}.login-card button{color:#fff;font:inherit;cursor:pointer;background:#b94f7a;border:none;border-radius:5px;margin-top:8px;padding:14px;font-weight:700}.login-card button:hover{background:#9f3f67}@media (width<=480px){.login-card{padding:28px 22px}}.login-greeting{text-align:center;justify-content:center;align-items:center;gap:10px;display:flex}.login-greeting h1{margin:0}.new-recipe-container{color:#4f3a35;background:#fff8e9;border:1px solid #d8c5a8;margin:20px;padding:35px 45px}
