:root{--primary-blue:#4a90e2;--primary-dark-blue:#2e5c8a;--accent-blue:#6ba3e8;--light-blue:#e8f4fd;--medium-blue:#7bb3f0;--light-gray:#f5f5f5;--medium-gray:#e0e0e0;--dark-gray:#333;--white:#fff;--shadow:#0000001a;--shadow-hover:#00000026}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f5f5f5;background-color:var(--light-gray);color:#333;color:var(--dark-gray);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}.app{display:flex;flex-direction:column;min-height:100vh}.header{position:-webkit-sticky;position:sticky;top:0;z-index:100}.app-header,.header{background:#fff;background:var(--white);border-bottom:1px solid #e0e0e0;border-bottom:1px solid var(--medium-gray);box-shadow:0 2px 8px #0000001a;box-shadow:0 2px 8px var(--shadow);color:#333;color:var(--dark-gray);padding:1rem 2rem}.app-header,.header-content{align-items:center;display:flex;justify-content:space-between}.header-content{margin:0 auto;max-width:1600px}.header-logo{align-items:center;display:flex;font-size:1.8rem;font-weight:700;gap:.75rem}.header-logo-img{height:150px;object-fit:contain;width:auto}.header-logo-text{display:none}.header-nav{align-items:center;display:flex;gap:1rem}.header-ai-btn{font-size:.9rem;padding:.5rem 1rem;white-space:nowrap}.header-actions{align-items:center;display:flex;gap:1rem}.user-name{font-weight:500}.header-search,.user-name{color:#333;color:var(--dark-gray)}.header-search{background:#fff;background:var(--white);border:1px solid #e0e0e0;border:1px solid var(--medium-gray);border-radius:20px;font-size:.9rem;padding:.5rem 1rem;width:300px}.header-search:focus{border-color:#4a90e2;border-color:var(--primary-blue);outline:none}.header-button{background:#4a90e2;background:var(--primary-blue);border:1px solid #4a90e2;border:1px solid var(--primary-blue);border-radius:20px;color:#fff;cursor:pointer;font-size:.9rem;padding:.5rem 1rem;transition:background .3s}.header-button:hover{background:#2e5c8a;background:var(--primary-dark-blue);border-color:#2e5c8a;border-color:var(--primary-dark-blue)}.auth-container{align-items:center;background:linear-gradient(135deg,#4a90e2,#2e5c8a);background:linear-gradient(135deg,var(--primary-blue) 0,var(--primary-dark-blue) 100%);display:flex;justify-content:center;min-height:100vh;padding:2rem}.auth-card{background:#fff;border-radius:12px;box-shadow:0 8px 24px #0000001a;box-shadow:0 8px 24px var(--shadow);max-width:400px;padding:2.5rem;width:100%}.auth-logo-container{display:flex;justify-content:center;margin-bottom:1rem}.auth-logo{height:120px;max-width:100%;object-fit:contain;width:auto}.auth-card h2{color:#2e5c8a;color:var(--primary-dark-blue);font-size:1.8rem;text-align:center}.auth-card h2,.form-group{margin-bottom:1.5rem}.form-group label{color:#333;color:var(--dark-gray);display:block;font-weight:500;margin-bottom:.5rem}.form-group input,.form-group select,.form-group textarea{border:1px solid #e0e0e0;border:1px solid var(--medium-gray);border-radius:6px;font-size:1rem;padding:.75rem;width:100%}.form-group textarea{min-height:100px;resize:vertical}.btn{border:none;border-radius:6px;cursor:pointer;font-size:1rem;font-weight:600;padding:.75rem 1.5rem;transition:all .3s}.btn-primary{background:linear-gradient(135deg,#4a90e2,#2e5c8a);background:linear-gradient(135deg,var(--primary-blue) 0,var(--primary-dark-blue) 100%);color:#fff;width:100%}.btn-primary:hover{box-shadow:0 4px 12px #00000026;box-shadow:0 4px 12px var(--shadow-hover);transform:translateY(-2px)}.btn-secondary{background:#e0e0e0;background:var(--medium-gray);color:#333;color:var(--dark-gray)}.btn-secondary:hover{background:#d0d0d0}.btn-danger{background:#dc3545;color:#fff}.btn-danger:hover{background:#c82333}.btn-success{background:#4a90e2;background:var(--primary-blue);color:#fff}.btn-success:hover{background:#2e5c8a;background:var(--primary-dark-blue)}.auth-link{color:#333;color:var(--dark-gray);margin-top:1rem;text-align:center}.auth-link a{color:#4a90e2;color:var(--primary-blue);font-weight:600;text-decoration:none}.auth-link a:hover{text-decoration:underline}.error-message{background:#f8d7da;border:1px solid #f5c6cb;border-radius:6px;color:#721c24;margin-bottom:1rem;padding:.75rem}.dashboard{flex:1 1;margin:0 auto;max-width:1600px;padding:2rem;width:100%}.dashboard-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:2rem}.dashboard-header h1{color:#2e5c8a;color:var(--primary-dark-blue)}.board-selector{align-items:center;display:flex;gap:1rem}.board-selector .btn-board-action{align-items:center;display:inline-flex;flex:0 0 auto;justify-content:center;text-decoration:none;white-space:nowrap;width:auto}.board-selector select{border:1px solid #e0e0e0;border:1px solid var(--medium-gray);border-radius:6px;cursor:pointer;font-size:1rem;padding:.5rem 1rem}.create-from-ingredients-page{flex:1 1;margin:0 auto;max-width:800px;padding:2rem;width:100%}.create-from-ingredients-card{background:#fff;background:var(--white);border-radius:12px;box-shadow:0 4px 16px #0000001a;box-shadow:0 4px 16px var(--shadow);padding:2rem}.create-from-ingredients-title{color:#2e5c8a;color:var(--primary-dark-blue);font-size:1.75rem;margin-bottom:.5rem}.create-from-ingredients-subtitle{color:#333;color:var(--dark-gray);line-height:1.5;margin-bottom:1.5rem}.create-from-ingredients-label{display:block;font-weight:600;margin-bottom:.5rem}.create-from-ingredients-textarea{border:1px solid #e0e0e0;border:1px solid var(--medium-gray);border-radius:8px;font-family:inherit;font-size:1rem;margin-bottom:1rem;padding:.75rem 1rem;resize:vertical;width:100%}.create-from-ingredients-error{color:#dc3545;margin-bottom:1rem}.create-from-ingredients-loading{align-items:center;background:#e8f4fd;background:var(--light-blue);border-radius:8px;color:#2e5c8a;color:var(--primary-dark-blue);display:flex;font-weight:500;gap:.75rem;margin-bottom:1rem;padding:1rem}.create-from-ingredients-results{border-top:1px solid #e0e0e0;border-top:1px solid var(--medium-gray);margin-top:2rem;padding-top:1.5rem}.create-from-ingredients-results h2{color:#2e5c8a;color:var(--primary-dark-blue);font-size:1.25rem;margin-bottom:1rem}.suggestion-card{background:#f5f5f5;background:var(--light-gray);border:1px solid #e0e0e0;border:1px solid var(--medium-gray);border-radius:8px;margin-bottom:1rem;overflow:hidden}.suggestion-card-header{align-items:center;background:#fff;background:var(--white);cursor:pointer;display:flex;font-weight:600;justify-content:space-between;padding:1rem}.suggestion-card-header:hover{background:#e8f4fd;background:var(--light-blue)}.suggestion-card-title{color:#2e5c8a;color:var(--primary-dark-blue)}.suggestion-card-toggle{color:#4a90e2;color:var(--primary-blue);font-size:.9rem}.suggestion-card-desc{color:#333;color:var(--dark-gray);font-size:.95rem;margin:0;padding:0 1rem .5rem}.suggestion-card-meta{color:#666;display:inline-block;font-size:.85rem;margin-right:1rem;padding:0 1rem .5rem}.suggestion-card-body{background:#fff;background:var(--white);border-top:1px solid #e0e0e0;border-top:1px solid var(--medium-gray);padding:1rem}.suggestion-card-body h4{color:#2e5c8a;color:var(--primary-dark-blue);font-size:1rem;margin:1rem 0 .5rem}.suggestion-card-body h4:first-child{margin-top:0}.suggestion-card-body ol,.suggestion-card-body ul{margin:0 0 1rem;padding-left:1.5rem}.suggestion-card-body li{margin-bottom:.25rem}.save-recipe-modal{background:#fff;background:var(--white);border-radius:12px;box-shadow:0 8px 24px #0003;max-width:400px;padding:1.5rem;width:90%}.save-recipe-modal h3{font-size:1.25rem;margin:0 0 .5rem}.save-recipe-modal p{color:#333;color:var(--dark-gray);font-size:.95rem;margin:0 0 1rem}.save-recipe-lists{margin-bottom:1rem;max-height:240px;overflow-y:auto}.save-recipe-board{margin-bottom:1rem}.save-recipe-board strong{display:block;font-size:.95rem;margin-bottom:.5rem}.save-recipe-list-btn{display:block;margin-bottom:.35rem;text-align:left;width:100%}.board-view{-webkit-overflow-scrolling:touch;display:flex;gap:1.5rem;min-height:400px;overflow-x:auto;overflow-y:visible;padding-bottom:2rem;scrollbar-color:#4a90e2 #f5f5f5;scrollbar-color:var(--primary-blue) var(--light-gray);scrollbar-width:thin}.board-view::-webkit-scrollbar{height:8px}.board-view::-webkit-scrollbar-track{background:#f5f5f5;background:var(--light-gray);border-radius:4px}.board-view::-webkit-scrollbar-thumb{background:#4a90e2;background:var(--primary-blue);border-radius:4px}.board-view::-webkit-scrollbar-thumb:hover{background:#2e5c8a;background:var(--primary-dark-blue)}.board-list{background:#fff;background:var(--white);border-radius:12px;box-shadow:0 2px 8px #0000001a;box-shadow:0 2px 8px var(--shadow);display:flex;flex-direction:column;flex-shrink:0;max-height:calc(100vh - 180px);max-width:300px;min-width:300px;overflow:hidden;padding:1rem;width:300px}.list-header{align-items:center;border-bottom:2px solid #4a90e2;border-bottom:2px solid var(--primary-blue);display:flex;justify-content:space-between;margin-bottom:1rem;padding-bottom:.75rem}.list-title{color:#2e5c8a;color:var(--primary-dark-blue);font-size:1.1rem;font-weight:700}.list-actions{display:flex;gap:.5rem}.icon-button{background:none;border:none;color:#333;color:var(--dark-gray);cursor:pointer;font-size:1.2rem;padding:.25rem;transition:color .3s}.icon-button:hover{color:#4a90e2;color:var(--primary-blue)}.recipe-cards{-webkit-overflow-scrolling:touch;display:flex;flex:1 1;flex-direction:column;gap:.75rem;overflow-x:hidden;overflow-y:auto;scrollbar-color:#4a90e2 #0000;scrollbar-color:var(--primary-blue) #0000;scrollbar-width:thin}.recipe-cards::-webkit-scrollbar{width:6px}.recipe-cards::-webkit-scrollbar-track{background:#0000}.recipe-cards::-webkit-scrollbar-thumb{background:#4a90e2;background:var(--primary-blue);border-radius:3px}.recipe-card{background:#f5f5f5;background:var(--light-gray);border-left:4px solid #4a90e2;border-left:4px solid var(--primary-blue);border-radius:8px;padding:1rem;position:relative;transition:all .3s}.recipe-card-drag-handle{opacity:0;touch-action:none;transition:opacity .2s}.recipe-card:active .recipe-card-drag-handle,.recipe-card:hover .recipe-card-drag-handle{opacity:1}@media (hover:none) and (pointer:coarse){.recipe-card-drag-handle{opacity:.6}.recipe-card-drag-handle:active{opacity:1}}.recipe-card:hover .recipe-card-upload-btn{opacity:1}.recipe-card:hover{box-shadow:0 4px 12px #00000026;box-shadow:0 4px 12px var(--shadow-hover);transform:translateY(-2px)}.recipe-card.dragging{opacity:.5}.recipe-card-header{align-items:start;display:flex;justify-content:space-between;margin-bottom:.5rem}.recipe-title{color:#2e5c8a;color:var(--primary-dark-blue);font-size:1rem;font-weight:600}.recipe-rating{color:#4a90e2;color:var(--primary-blue);font-size:.9rem}.recipe-description{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#666;display:-webkit-box;font-size:.85rem;margin-bottom:.5rem;overflow:hidden}.recipe-meta{color:#999;display:flex;font-size:.75rem;gap:.75rem}.recipe-image{border-radius:6px;height:120px;margin-bottom:.5rem;object-fit:cover;width:100%}.add-card-button{background:#e0e0e0;background:var(--medium-gray);border:2px dashed #999;border-radius:8px;color:#666;cursor:pointer;font-weight:600;padding:.75rem;transition:all .3s;width:100%}.add-card-button:hover{background:#d0d0d0;border-color:#4a90e2;border-color:var(--primary-blue);color:#4a90e2;color:var(--primary-blue)}.add-list-button{align-items:center;background:#fffc;border:2px dashed #e0e0e0;border:2px dashed var(--medium-gray);border-radius:12px;box-shadow:0 2px 8px #0000001a;box-shadow:0 2px 8px var(--shadow);color:#666;cursor:pointer;display:flex;font-weight:600;justify-content:center;min-width:300px;padding:1rem;transition:all .3s}.add-list-button:hover{background:#fff;border-color:#4a90e2;border-color:var(--primary-blue);color:#4a90e2;color:var(--primary-blue)}.modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:1rem;position:fixed;right:0;top:0;z-index:1000}.modal{background:#fff;border-radius:12px;box-shadow:0 8px 24px #0000004d;max-height:90vh;max-width:800px;overflow-y:auto;padding:2rem;width:100%}.modal-header{align-items:center;border-bottom:2px solid #4a90e2;border-bottom:2px solid var(--primary-blue);display:flex;justify-content:space-between;margin-bottom:1.5rem;padding-bottom:1rem}.modal-header h2{color:#2e5c8a;color:var(--primary-dark-blue)}.modal-close{background:none;border:none;color:#333;color:var(--dark-gray);cursor:pointer;font-size:1.5rem}.modal-close:hover{color:#4a90e2;color:var(--primary-blue)}.ai-search-modal .form-group label{display:block;font-weight:500;margin-bottom:.35rem}.ai-search-results{border-top:1px solid #e0e0e0;border-top:1px solid var(--medium-gray);margin-top:1rem;padding-top:1rem}.ai-search-results-header{color:#2e5c8a;color:var(--primary-dark-blue);font-size:.9rem;font-weight:600;margin-bottom:.75rem}.ai-search-results-list{list-style:none;margin:0;max-height:320px;overflow-y:auto;padding:0}.ai-search-results-list li{margin-bottom:.5rem}.ai-search-result-item{background:#fff;background:var(--white);border:1px solid #e0e0e0;border:1px solid var(--medium-gray);border-radius:8px;cursor:pointer;display:block;padding:.75rem 1rem;text-align:left;transition:background .2s,border-color .2s;width:100%}.ai-search-result-item:hover{background:#e8f4fd;background:var(--light-blue);border-color:#4a90e2;border-color:var(--primary-blue)}.ai-search-result-title{color:#333;color:var(--dark-gray);display:block;font-weight:600}.ai-search-result-desc{color:#666;display:block;font-size:.85rem;margin-top:.25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ai-search-web-list{max-height:280px}.ai-search-web-item{background:#fff;background:var(--white);border:1px solid #e0e0e0;border:1px solid var(--medium-gray);border-radius:8px;margin-bottom:.5rem;padding:.75rem}.ai-search-web-title{margin-bottom:.25rem}.ai-search-web-link{color:#4a90e2;color:var(--primary-blue);font-weight:600;text-decoration:none}.ai-search-web-link:hover{text-decoration:underline}.ai-search-web-snippet{color:#666;font-size:.85rem;line-height:1.35;margin:.35rem 0 .5rem}.ai-search-add-btn{font-size:.85rem;margin-top:.25rem;padding:.35rem .75rem}.ai-search-add-to-list-bar{align-items:center;background:#e8f4fd;background:var(--light-blue);border-radius:8px;display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem;padding:1rem}.ai-search-add-to-list-label{color:#2e5c8a;color:var(--primary-dark-blue);font-size:.9rem;font-weight:500}.ai-search-add-select{border:1px solid #e0e0e0;border:1px solid var(--medium-gray);border-radius:6px;min-width:180px;padding:.4rem .6rem}.modal-section{margin-bottom:1.5rem}.modal-section h3{color:#2e5c8a;color:var(--primary-dark-blue);font-size:1.1rem;margin-bottom:1rem}.ingredient-list,.instruction-list{list-style:none;padding-left:0}.ingredient-item{background:#f5f5f5;background:var(--light-gray);border-radius:4px;margin-bottom:.25rem;padding:.5rem}.ingredient-item:before{color:#4a90e2;color:var(--primary-blue);content:"✓ ";font-weight:700;margin-right:.5rem}.instruction-item{background:#f5f5f5;background:var(--light-gray);border-radius:4px;display:flex;gap:.75rem;margin-bottom:.5rem;padding:.75rem}.step-number{align-items:center;background:#4a90e2;background:var(--primary-blue);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:.9rem;font-weight:700;height:28px;justify-content:center;width:28px}.modal-actions{border-top:1px solid #e0e0e0;border-top:1px solid var(--medium-gray);display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem;padding-top:1rem}.import-tabs{border-bottom:2px solid #e0e0e0;border-bottom:2px solid var(--medium-gray);display:flex;gap:1rem;margin-bottom:1.5rem}.import-tab{background:none;border:none;border-bottom:3px solid #0000;color:#666;cursor:pointer;font-weight:600;padding:.75rem 1.5rem;transition:all .3s}.import-tab.active{border-bottom-color:#4a90e2;border-bottom-color:var(--primary-blue)}.import-tab.active,.import-tab:hover{color:#4a90e2;color:var(--primary-blue)}.file-upload-area{border:2px dashed #e0e0e0;border:2px dashed var(--medium-gray);border-radius:8px;cursor:pointer;padding:2rem;text-align:center;transition:all .3s}.file-upload-area:hover{background:#e8f4fd;background:var(--light-blue)}.file-upload-area.dragging,.file-upload-area:hover{border-color:#4a90e2;border-color:var(--primary-blue)}.file-upload-area.dragging{background:#4a90e21a}.loading-spinner{animation:spin 1s linear infinite;border:3px solid #e0e0e0;border-top-color:#4a90e2;border:3px solid var(--medium-gray);border-radius:50%;border-top-color:var(--primary-blue);display:inline-block;height:20px;width:20px}@keyframes spin{to{transform:rotate(1turn)}}.recipe-detail-container{margin:0 auto;max-width:900px;padding:2rem}.recipe-detail-card{background:#fff;border-radius:12px;box-shadow:0 4px 16px #0000001a;box-shadow:0 4px 16px var(--shadow);padding:2.5rem}.recipe-detail-header{align-items:flex-start;border-bottom:2px solid #4a90e2;border-bottom:2px solid var(--primary-blue);display:flex;flex-direction:row;gap:2rem;margin-bottom:2rem;padding-bottom:1.5rem}.recipe-detail-header-left{flex:1 1;max-width:100%;min-width:12rem}.recipe-detail-title{color:#2e5c8a;color:var(--primary-dark-blue);font-size:1.6rem;font-weight:700;line-height:1.2;margin-bottom:.5rem;overflow-wrap:break-word;word-break:normal}.recipe-detail-rating{color:#4a90e2;color:var(--primary-blue);font-size:1.2rem;margin-top:.5rem}.recipe-detail-header-right{align-content:flex-start;align-items:center;display:flex;flex:0 0 auto;flex-wrap:wrap;gap:.5rem;justify-content:flex-end;min-width:0}.recipe-detail-header-right .btn,.recipe-detail-header-right .btn-scale{flex:0 0 auto;font-size:.85rem!important;line-height:1.3;min-height:2.25rem;padding:.45rem .75rem!important;width:auto!important}.recipe-detail-header-right .print-scale-label{font-size:.85rem;line-height:2.25rem;margin:0}.recipe-detail-header-right .print-scale-buttons{display:inline-flex;gap:.15rem}.recipe-detail-header-right .btn-scale{min-width:2.25rem;padding:.45rem .5rem!important}.recipe-detail-actions{align-items:center;display:flex;flex-shrink:0;flex-wrap:wrap;gap:.75rem;justify-content:flex-end;min-width:0}.recipe-detail-actions .btn-share-compact,.recipe-detail-header-right .btn-share-compact{flex:0 0 auto;font-size:.85rem!important;font-weight:600;min-width:0;min-width:auto;padding:.45rem .75rem!important;white-space:nowrap;width:auto!important}.print-scale-label{color:#333;color:var(--dark-gray);font-size:.9rem;margin-right:.25rem}.print-scale-buttons{display:flex;gap:.25rem}.btn-scale{background:#fff;background:var(--white);border:1px solid #e0e0e0;border:1px solid var(--medium-gray);border-radius:6px;color:#333;color:var(--dark-gray);cursor:pointer;font-size:.95rem;min-width:2.5rem;padding:.4rem .6rem}.btn-scale:hover{background:#f5f5f5;background:var(--light-gray)}.btn-scale-active,.btn-scale:hover{border-color:#4a90e2;border-color:var(--primary-blue)}.btn-scale-active{background:#4a90e2;background:var(--primary-blue);color:#fff;color:var(--white)}.recipe-scale-note{color:#2e5c8a;color:var(--primary-dark-blue);font-size:.9rem;font-style:italic;margin-bottom:.5rem}.recipe-detail-image{border-radius:12px;box-shadow:0 4px 12px #0000001a;box-shadow:0 4px 12px var(--shadow);margin-bottom:2rem;overflow:hidden}.recipe-detail-image img{display:block;max-height:500px;object-fit:cover;width:100%}.recipe-detail-meta{grid-gap:1.5rem;background:#e8f4fd;background:var(--light-blue);border-radius:8px;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-bottom:2rem;padding:1.5rem}.meta-item{display:flex;flex-direction:column;gap:.25rem}.meta-label{color:#666;font-size:.85rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.meta-value{color:#2e5c8a;color:var(--primary-dark-blue);font-size:1.1rem;font-weight:600}.recipe-detail-section{margin-bottom:2.5rem}.recipe-detail-section h2{border-bottom:2px solid #e8f4fd;border-bottom:2px solid var(--light-blue);color:#2e5c8a;color:var(--primary-dark-blue);font-size:1.5rem;margin-bottom:1rem;padding-bottom:.5rem}.recipe-detail-section p{color:#333;color:var(--dark-gray);font-size:1rem;line-height:1.8}.recipe-notes{background:#e8f4fd;background:var(--light-blue);border-left:4px solid #4a90e2;border-left:4px solid var(--primary-blue);border-radius:8px;font-style:italic;padding:1.5rem}.source-link{border-radius:4px;color:#4a90e2;color:var(--primary-blue);display:inline-block;padding:.5rem;text-decoration:none;transition:background .3s;word-break:break-all}.source-link:hover{background:#e8f4fd;background:var(--light-blue);text-decoration:underline}.recipe-photos-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));margin-top:1rem}.recipe-photo-item{border-radius:8px;box-shadow:0 2px 8px #0000001a;box-shadow:0 2px 8px var(--shadow);overflow:hidden}.recipe-photo-item img{display:block;height:200px;object-fit:cover;width:100%}.photo-caption{background:#f5f5f5;background:var(--light-gray);color:#666;font-size:.85rem;margin:0;padding:.75rem;text-align:center}.nutrition-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));margin-top:1rem}.nutrition-item{background:#e8f4fd;background:var(--light-blue);border-radius:8px;display:flex;flex-direction:column;padding:1rem;text-align:center}.nutrition-label{color:#666;font-size:.85rem;font-weight:600;letter-spacing:.5px;margin-bottom:.5rem;text-transform:uppercase}.nutrition-value{color:#2e5c8a;color:var(--primary-dark-blue);font-size:1.2rem;font-weight:700}@media print{*{box-shadow:none!important;text-shadow:none!important}.btn,.header,.recipe-card-upload-btn,.recipe-detail-actions,.recipe-detail-header-right,button,input[type=file],label[for*=upload]{display:none!important}body{background:#fff;font-size:10pt;line-height:1.1}li,p{margin:0;padding:0}.recipe-detail-container{margin:0;max-width:100%;padding:.5rem}.recipe-detail-card{background:#fff;border:none;box-shadow:none;padding:.5rem}.recipe-detail-header{border-bottom:1px solid #ccc;margin-bottom:.5rem;padding-bottom:.5rem}.recipe-detail-title{font-size:18pt;margin-bottom:.25rem;page-break-after:avoid}.recipe-detail-rating{font-size:10pt;margin-top:0}.recipe-detail-image{margin-bottom:.5rem;page-break-inside:avoid}.recipe-detail-image img{display:block;margin:0 auto;max-height:200px;width:auto}.recipe-detail-meta{grid-gap:.5rem;background:#f5f5f5;border-radius:0;display:grid;gap:.5rem;grid-template-columns:repeat(4,1fr);margin-bottom:.5rem;padding:.5rem;page-break-inside:avoid}.meta-item{gap:.1rem}.meta-label{font-size:7pt;margin-bottom:.1rem}.meta-value{font-size:9pt}.recipe-detail-section{margin-bottom:.4rem;page-break-inside:avoid}.recipe-detail-section h2{border-bottom:1px solid #ddd;font-size:12pt;line-height:1.2;margin:0 0 .15rem;padding:0 0 .15rem;page-break-after:avoid}.recipe-detail-section p{font-size:9pt;line-height:1.1;margin:0 0 .1rem;padding:0}.ingredient-list{column-count:2;column-gap:1rem;margin:.1rem 0;padding-left:1rem}.ingredient-item,.ingredient-list{line-height:1.1;page-break-inside:avoid}.ingredient-item{font-size:9pt;margin:0 0 .05rem;padding:0}.instruction-list{margin:.1rem 0;padding-left:1rem}.instruction-item,.instruction-list{line-height:1.1;page-break-inside:avoid}.instruction-item{font-size:9pt;margin:0 0 .1rem;padding:0}.step-number{font-weight:700;margin-right:.3rem}.instruction-text{display:inline}.recipe-notes{background:#f5f5f5;border-left:2px solid #4a90e2;border-radius:0;font-size:8pt;line-height:1.1;margin:0 0 .3rem;padding:.3rem;page-break-inside:avoid}.source-link{font-size:8pt;padding:0;word-break:break-all}.recipe-photos-grid{gap:.5rem;grid-template-columns:repeat(3,1fr);margin-top:.5rem}.recipe-photo-item{page-break-inside:avoid}.recipe-photo-item img{height:100px}.photo-caption{font-size:7pt;padding:.25rem}.recipe-detail-description{margin-bottom:.5rem}@page{size:letter;margin:.5in}@media print and (min-width:8in){.ingredient-list{column-count:2}}}@media (max-width:1024px){.dashboard{height:calc(100vh - 150px);padding:1rem}.board-view{gap:1rem}.board-list{max-width:280px;min-width:280px;width:280px}}@media (max-width:768px){.header{padding:1rem}.header-search{width:150px}.dashboard{height:calc(100vh - 150px);padding:1rem}.board-view{flex-direction:column;overflow-x:visible;overflow-y:auto}.board-list{max-width:100%;min-width:100%;width:100%}.modal{padding:1.5rem}.recipe-detail-container{padding:1rem}.recipe-detail-card{padding:1.5rem}.recipe-detail-title{font-size:1.5rem}.recipe-detail-header{flex-direction:column;gap:1rem}.recipe-detail-header-right{justify-content:flex-start;width:100%}.recipe-detail-actions{width:100%}.recipe-detail-actions .btn,.recipe-detail-header-right .btn{flex:1 1}.recipe-detail-meta,.recipe-photos-grid{grid-template-columns:1fr}}
/*# sourceMappingURL=main.b0322640.css.map*/