*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Roboto,sans-serif;background:#e1e1e4}body{color:#222}.wrapper{display:flex;flex-direction:column;min-height:100vh}header{background-color:#2b3032;color:#fff;padding:24px 28px}.header-content{display:flex;align-items:center;gap:20px}.logo{width:70px;height:70px;object-fit:contain}h1{font-size:clamp(2rem,2.5vw,3rem);line-height:1.05;margin:0}main{flex:1;padding:40px 24px}.search-container{max-width:800px;margin:0 auto;text-align:center}.search-form{display:grid;gap:16px;margin-bottom:24px}label{font-size:1rem;color:#333;text-align:left}input{width:100%;padding:14px 16px;font-size:1rem;border-radius:8px;border:1px solid #c1c1c8}button{padding:14px 20px;font-size:1rem;border:none;border-radius:8px;background-color:#2b3032;color:#fff;cursor:pointer}button:disabled{opacity:.65;cursor:not-allowed}.result-card{display:grid;grid-template-columns:minmax(130px,.8fr) minmax(220px,1.5fr) minmax(130px,1.5fr);align-items:start;gap:24px;cursor:pointer}.result-card,.ingredient-card{background:#fff;border-radius:12px;padding:22px;text-align:left;margin:16px auto;box-shadow:0 16px 40px #00000014}.result-card p{display:flex;align-items:flex-start;min-width:0;margin:0;line-height:1.4;overflow-wrap:anywhere}.result-card strong{flex:0 0 auto;margin-right:6px;color:#2b3032}.result-card h2,.ingredient-card h2{margin-top:0}.ingredient-card ul{padding-left:20px;margin:0}.message{max-width:680px;margin:0 auto;font-size:1rem;color:#333}.message.error{color:#b82d2d}footer{background-color:#2b3032;color:#fff;text-align:center;padding:32px 20px}.detail-page{max-width:680px;margin:0 auto}.back-button{display:inline-block;margin-bottom:24px;padding:10px 16px;font-size:.95rem;background-color:#666;border:1px solid #2b3032}.back-button:hover{background-color:#555}.product-detail{background:#fff;border-radius:12px;padding:32px;box-shadow:0 16px 40px #00000014}.product-detail h2{margin-top:0;font-size:2rem;color:#2b3032}.detail-info{margin:24px 0}.detail-info p{margin:12px 0;font-size:1rem;line-height:1.6}.detail-info strong{color:#2b3032}@media (max-width: 700px){.result-card{grid-template-columns:1fr;gap:12px}}.table-wrapper{overflow-x:auto}.interchangeable-table{width:100%;table-layout:fixed;border-collapse:collapse;margin-top:1rem}.interchangeable-table th:nth-child(1),.interchangeable-table td:nth-child(1){width:20%}.interchangeable-table th:nth-child(2),.interchangeable-table td:nth-child(2){width:40%}.interchangeable-table th:nth-child(3),.interchangeable-table td:nth-child(3){width:20%}.interchangeable-table th:nth-child(4),.interchangeable-table td:nth-child(4){width:20%}.interchangeable-table tbody tr{cursor:pointer;transition:background-color .15s ease}.interchangeable-table tbody tr:hover,.interchangeable-table tbody tr:focus{background-color:#eef6f8;outline:none}.interchangeable-table th,.interchangeable-table td{padding:.75rem;border:none;text-align:center;vertical-align:middle;overflow-wrap:anywhere}.interchangeable-table th{background-color:#f2f2f2;font-weight:700}.found-products-table{width:100%;table-layout:fixed;border-collapse:collapse;margin-top:1rem;background:#fff}.found-products-table th,.found-products-table td{padding:.9rem;border:none;text-align:center;vertical-align:middle}.found-products-table th{background-color:#2b3032;color:#fff;font-weight:700}.found-products-table th:nth-child(1),.found-products-table td:nth-child(1){width:20%}.found-products-table th:nth-child(2),.found-products-table td:nth-child(2){width:40%}.found-products-table th:nth-child(3),.found-products-table td:nth-child(3){width:40%}.found-products-table tbody tr{cursor:pointer;transition:background-color .15s ease}.found-products-table tbody tr:hover,.found-products-table tbody tr:focus{background-color:#eef6f8;outline:none}.interchangeable-table tr,.found-products-table tr{border-bottom:1px solid #ddd}.interchangeable-table thead tr,.found-products-table thead tr{border-bottom:2px solid #2b3032}.interchangeable-table tbody tr:last-child,.found-products-table tbody tr:last-child{border-bottom:none}@media (max-width: 700px){.found-products-table th,.found-products-table td{padding:.6rem;font-size:.9rem}}
